1 // This file was generated by gir (https://github.com/gtk-rs/gir)
2 // from gir-files (https://github.com/gtk-rs/gir-files)
3 // DO NOT EDIT
4 
5 #![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
6 #![allow(
7     clippy::approx_constant,
8     clippy::type_complexity,
9     clippy::unreadable_literal,
10     clippy::upper_case_acronyms
11 )]
12 #![cfg_attr(feature = "dox", feature(doc_cfg))]
13 
14 mod manual;
15 
16 pub use manual::*;
17 
18 #[allow(unused_imports)]
19 use libc::{
20     c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
21     intptr_t, size_t, ssize_t, time_t, uintptr_t, FILE,
22 };
23 
24 pub type gboolean = c_int;
25 pub const GFALSE: c_int = 0;
26 pub const GTRUE: c_int = 1;
27 
28 pub type gconstpointer = *const c_void;
29 pub type gpointer = *mut c_void;
30 
31 // Aliases
32 pub type GDateDay = u8;
33 pub type GDateYear = u16;
34 pub type GMainContextPusher = c_void;
35 pub type GMutexLocker = c_void;
36 pub type GQuark = u32;
37 pub type GRWLockReaderLocker = c_void;
38 pub type GRWLockWriterLocker = c_void;
39 pub type GRecMutexLocker = c_void;
40 pub type GRefString = c_char;
41 pub type GStrv = *mut *mut c_char;
42 pub type GTime = i32;
43 pub type GTimeSpan = i64;
44 pub type GType = size_t;
45 
46 // Enums
47 pub type GBookmarkFileError = c_int;
48 pub const G_BOOKMARK_FILE_ERROR_INVALID_URI: GBookmarkFileError = 0;
49 pub const G_BOOKMARK_FILE_ERROR_INVALID_VALUE: GBookmarkFileError = 1;
50 pub const G_BOOKMARK_FILE_ERROR_APP_NOT_REGISTERED: GBookmarkFileError = 2;
51 pub const G_BOOKMARK_FILE_ERROR_URI_NOT_FOUND: GBookmarkFileError = 3;
52 pub const G_BOOKMARK_FILE_ERROR_READ: GBookmarkFileError = 4;
53 pub const G_BOOKMARK_FILE_ERROR_UNKNOWN_ENCODING: GBookmarkFileError = 5;
54 pub const G_BOOKMARK_FILE_ERROR_WRITE: GBookmarkFileError = 6;
55 pub const G_BOOKMARK_FILE_ERROR_FILE_NOT_FOUND: GBookmarkFileError = 7;
56 
57 pub type GChecksumType = c_int;
58 pub const G_CHECKSUM_MD5: GChecksumType = 0;
59 pub const G_CHECKSUM_SHA1: GChecksumType = 1;
60 pub const G_CHECKSUM_SHA256: GChecksumType = 2;
61 pub const G_CHECKSUM_SHA512: GChecksumType = 3;
62 pub const G_CHECKSUM_SHA384: GChecksumType = 4;
63 
64 pub type GConvertError = c_int;
65 pub const G_CONVERT_ERROR_NO_CONVERSION: GConvertError = 0;
66 pub const G_CONVERT_ERROR_ILLEGAL_SEQUENCE: GConvertError = 1;
67 pub const G_CONVERT_ERROR_FAILED: GConvertError = 2;
68 pub const G_CONVERT_ERROR_PARTIAL_INPUT: GConvertError = 3;
69 pub const G_CONVERT_ERROR_BAD_URI: GConvertError = 4;
70 pub const G_CONVERT_ERROR_NOT_ABSOLUTE_PATH: GConvertError = 5;
71 pub const G_CONVERT_ERROR_NO_MEMORY: GConvertError = 6;
72 pub const G_CONVERT_ERROR_EMBEDDED_NUL: GConvertError = 7;
73 
74 pub type GDateDMY = c_int;
75 pub const G_DATE_DAY: GDateDMY = 0;
76 pub const G_DATE_MONTH: GDateDMY = 1;
77 pub const G_DATE_YEAR: GDateDMY = 2;
78 
79 pub type GDateMonth = c_int;
80 pub const G_DATE_BAD_MONTH: GDateMonth = 0;
81 pub const G_DATE_JANUARY: GDateMonth = 1;
82 pub const G_DATE_FEBRUARY: GDateMonth = 2;
83 pub const G_DATE_MARCH: GDateMonth = 3;
84 pub const G_DATE_APRIL: GDateMonth = 4;
85 pub const G_DATE_MAY: GDateMonth = 5;
86 pub const G_DATE_JUNE: GDateMonth = 6;
87 pub const G_DATE_JULY: GDateMonth = 7;
88 pub const G_DATE_AUGUST: GDateMonth = 8;
89 pub const G_DATE_SEPTEMBER: GDateMonth = 9;
90 pub const G_DATE_OCTOBER: GDateMonth = 10;
91 pub const G_DATE_NOVEMBER: GDateMonth = 11;
92 pub const G_DATE_DECEMBER: GDateMonth = 12;
93 
94 pub type GDateWeekday = c_int;
95 pub const G_DATE_BAD_WEEKDAY: GDateWeekday = 0;
96 pub const G_DATE_MONDAY: GDateWeekday = 1;
97 pub const G_DATE_TUESDAY: GDateWeekday = 2;
98 pub const G_DATE_WEDNESDAY: GDateWeekday = 3;
99 pub const G_DATE_THURSDAY: GDateWeekday = 4;
100 pub const G_DATE_FRIDAY: GDateWeekday = 5;
101 pub const G_DATE_SATURDAY: GDateWeekday = 6;
102 pub const G_DATE_SUNDAY: GDateWeekday = 7;
103 
104 pub type GErrorType = c_int;
105 pub const G_ERR_UNKNOWN: GErrorType = 0;
106 pub const G_ERR_UNEXP_EOF: GErrorType = 1;
107 pub const G_ERR_UNEXP_EOF_IN_STRING: GErrorType = 2;
108 pub const G_ERR_UNEXP_EOF_IN_COMMENT: GErrorType = 3;
109 pub const G_ERR_NON_DIGIT_IN_CONST: GErrorType = 4;
110 pub const G_ERR_DIGIT_RADIX: GErrorType = 5;
111 pub const G_ERR_FLOAT_RADIX: GErrorType = 6;
112 pub const G_ERR_FLOAT_MALFORMED: GErrorType = 7;
113 
114 pub type GFileError = c_int;
115 pub const G_FILE_ERROR_EXIST: GFileError = 0;
116 pub const G_FILE_ERROR_ISDIR: GFileError = 1;
117 pub const G_FILE_ERROR_ACCES: GFileError = 2;
118 pub const G_FILE_ERROR_NAMETOOLONG: GFileError = 3;
119 pub const G_FILE_ERROR_NOENT: GFileError = 4;
120 pub const G_FILE_ERROR_NOTDIR: GFileError = 5;
121 pub const G_FILE_ERROR_NXIO: GFileError = 6;
122 pub const G_FILE_ERROR_NODEV: GFileError = 7;
123 pub const G_FILE_ERROR_ROFS: GFileError = 8;
124 pub const G_FILE_ERROR_TXTBSY: GFileError = 9;
125 pub const G_FILE_ERROR_FAULT: GFileError = 10;
126 pub const G_FILE_ERROR_LOOP: GFileError = 11;
127 pub const G_FILE_ERROR_NOSPC: GFileError = 12;
128 pub const G_FILE_ERROR_NOMEM: GFileError = 13;
129 pub const G_FILE_ERROR_MFILE: GFileError = 14;
130 pub const G_FILE_ERROR_NFILE: GFileError = 15;
131 pub const G_FILE_ERROR_BADF: GFileError = 16;
132 pub const G_FILE_ERROR_INVAL: GFileError = 17;
133 pub const G_FILE_ERROR_PIPE: GFileError = 18;
134 pub const G_FILE_ERROR_AGAIN: GFileError = 19;
135 pub const G_FILE_ERROR_INTR: GFileError = 20;
136 pub const G_FILE_ERROR_IO: GFileError = 21;
137 pub const G_FILE_ERROR_PERM: GFileError = 22;
138 pub const G_FILE_ERROR_NOSYS: GFileError = 23;
139 pub const G_FILE_ERROR_FAILED: GFileError = 24;
140 
141 pub type GIOChannelError = c_int;
142 pub const G_IO_CHANNEL_ERROR_FBIG: GIOChannelError = 0;
143 pub const G_IO_CHANNEL_ERROR_INVAL: GIOChannelError = 1;
144 pub const G_IO_CHANNEL_ERROR_IO: GIOChannelError = 2;
145 pub const G_IO_CHANNEL_ERROR_ISDIR: GIOChannelError = 3;
146 pub const G_IO_CHANNEL_ERROR_NOSPC: GIOChannelError = 4;
147 pub const G_IO_CHANNEL_ERROR_NXIO: GIOChannelError = 5;
148 pub const G_IO_CHANNEL_ERROR_OVERFLOW: GIOChannelError = 6;
149 pub const G_IO_CHANNEL_ERROR_PIPE: GIOChannelError = 7;
150 pub const G_IO_CHANNEL_ERROR_FAILED: GIOChannelError = 8;
151 
152 pub type GIOError = c_int;
153 pub const G_IO_ERROR_NONE: GIOError = 0;
154 pub const G_IO_ERROR_AGAIN: GIOError = 1;
155 pub const G_IO_ERROR_INVAL: GIOError = 2;
156 pub const G_IO_ERROR_UNKNOWN: GIOError = 3;
157 
158 pub type GIOStatus = c_int;
159 pub const G_IO_STATUS_ERROR: GIOStatus = 0;
160 pub const G_IO_STATUS_NORMAL: GIOStatus = 1;
161 pub const G_IO_STATUS_EOF: GIOStatus = 2;
162 pub const G_IO_STATUS_AGAIN: GIOStatus = 3;
163 
164 pub type GKeyFileError = c_int;
165 pub const G_KEY_FILE_ERROR_UNKNOWN_ENCODING: GKeyFileError = 0;
166 pub const G_KEY_FILE_ERROR_PARSE: GKeyFileError = 1;
167 pub const G_KEY_FILE_ERROR_NOT_FOUND: GKeyFileError = 2;
168 pub const G_KEY_FILE_ERROR_KEY_NOT_FOUND: GKeyFileError = 3;
169 pub const G_KEY_FILE_ERROR_GROUP_NOT_FOUND: GKeyFileError = 4;
170 pub const G_KEY_FILE_ERROR_INVALID_VALUE: GKeyFileError = 5;
171 
172 pub type GLogWriterOutput = c_int;
173 pub const G_LOG_WRITER_HANDLED: GLogWriterOutput = 1;
174 pub const G_LOG_WRITER_UNHANDLED: GLogWriterOutput = 0;
175 
176 pub type GMarkupError = c_int;
177 pub const G_MARKUP_ERROR_BAD_UTF8: GMarkupError = 0;
178 pub const G_MARKUP_ERROR_EMPTY: GMarkupError = 1;
179 pub const G_MARKUP_ERROR_PARSE: GMarkupError = 2;
180 pub const G_MARKUP_ERROR_UNKNOWN_ELEMENT: GMarkupError = 3;
181 pub const G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE: GMarkupError = 4;
182 pub const G_MARKUP_ERROR_INVALID_CONTENT: GMarkupError = 5;
183 pub const G_MARKUP_ERROR_MISSING_ATTRIBUTE: GMarkupError = 6;
184 
185 pub type GNormalizeMode = c_int;
186 pub const G_NORMALIZE_DEFAULT: GNormalizeMode = 0;
187 pub const G_NORMALIZE_NFD: GNormalizeMode = 0;
188 pub const G_NORMALIZE_DEFAULT_COMPOSE: GNormalizeMode = 1;
189 pub const G_NORMALIZE_NFC: GNormalizeMode = 1;
190 pub const G_NORMALIZE_ALL: GNormalizeMode = 2;
191 pub const G_NORMALIZE_NFKD: GNormalizeMode = 2;
192 pub const G_NORMALIZE_ALL_COMPOSE: GNormalizeMode = 3;
193 pub const G_NORMALIZE_NFKC: GNormalizeMode = 3;
194 
195 pub type GNumberParserError = c_int;
196 pub const G_NUMBER_PARSER_ERROR_INVALID: GNumberParserError = 0;
197 pub const G_NUMBER_PARSER_ERROR_OUT_OF_BOUNDS: GNumberParserError = 1;
198 
199 pub type GOnceStatus = c_int;
200 pub const G_ONCE_STATUS_NOTCALLED: GOnceStatus = 0;
201 pub const G_ONCE_STATUS_PROGRESS: GOnceStatus = 1;
202 pub const G_ONCE_STATUS_READY: GOnceStatus = 2;
203 
204 pub type GOptionArg = c_int;
205 pub const G_OPTION_ARG_NONE: GOptionArg = 0;
206 pub const G_OPTION_ARG_STRING: GOptionArg = 1;
207 pub const G_OPTION_ARG_INT: GOptionArg = 2;
208 pub const G_OPTION_ARG_CALLBACK: GOptionArg = 3;
209 pub const G_OPTION_ARG_FILENAME: GOptionArg = 4;
210 pub const G_OPTION_ARG_STRING_ARRAY: GOptionArg = 5;
211 pub const G_OPTION_ARG_FILENAME_ARRAY: GOptionArg = 6;
212 pub const G_OPTION_ARG_DOUBLE: GOptionArg = 7;
213 pub const G_OPTION_ARG_INT64: GOptionArg = 8;
214 
215 pub type GOptionError = c_int;
216 pub const G_OPTION_ERROR_UNKNOWN_OPTION: GOptionError = 0;
217 pub const G_OPTION_ERROR_BAD_VALUE: GOptionError = 1;
218 pub const G_OPTION_ERROR_FAILED: GOptionError = 2;
219 
220 pub type GRegexError = c_int;
221 pub const G_REGEX_ERROR_COMPILE: GRegexError = 0;
222 pub const G_REGEX_ERROR_OPTIMIZE: GRegexError = 1;
223 pub const G_REGEX_ERROR_REPLACE: GRegexError = 2;
224 pub const G_REGEX_ERROR_MATCH: GRegexError = 3;
225 pub const G_REGEX_ERROR_INTERNAL: GRegexError = 4;
226 pub const G_REGEX_ERROR_STRAY_BACKSLASH: GRegexError = 101;
227 pub const G_REGEX_ERROR_MISSING_CONTROL_CHAR: GRegexError = 102;
228 pub const G_REGEX_ERROR_UNRECOGNIZED_ESCAPE: GRegexError = 103;
229 pub const G_REGEX_ERROR_QUANTIFIERS_OUT_OF_ORDER: GRegexError = 104;
230 pub const G_REGEX_ERROR_QUANTIFIER_TOO_BIG: GRegexError = 105;
231 pub const G_REGEX_ERROR_UNTERMINATED_CHARACTER_CLASS: GRegexError = 106;
232 pub const G_REGEX_ERROR_INVALID_ESCAPE_IN_CHARACTER_CLASS: GRegexError = 107;
233 pub const G_REGEX_ERROR_RANGE_OUT_OF_ORDER: GRegexError = 108;
234 pub const G_REGEX_ERROR_NOTHING_TO_REPEAT: GRegexError = 109;
235 pub const G_REGEX_ERROR_UNRECOGNIZED_CHARACTER: GRegexError = 112;
236 pub const G_REGEX_ERROR_POSIX_NAMED_CLASS_OUTSIDE_CLASS: GRegexError = 113;
237 pub const G_REGEX_ERROR_UNMATCHED_PARENTHESIS: GRegexError = 114;
238 pub const G_REGEX_ERROR_INEXISTENT_SUBPATTERN_REFERENCE: GRegexError = 115;
239 pub const G_REGEX_ERROR_UNTERMINATED_COMMENT: GRegexError = 118;
240 pub const G_REGEX_ERROR_EXPRESSION_TOO_LARGE: GRegexError = 120;
241 pub const G_REGEX_ERROR_MEMORY_ERROR: GRegexError = 121;
242 pub const G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND: GRegexError = 125;
243 pub const G_REGEX_ERROR_MALFORMED_CONDITION: GRegexError = 126;
244 pub const G_REGEX_ERROR_TOO_MANY_CONDITIONAL_BRANCHES: GRegexError = 127;
245 pub const G_REGEX_ERROR_ASSERTION_EXPECTED: GRegexError = 128;
246 pub const G_REGEX_ERROR_UNKNOWN_POSIX_CLASS_NAME: GRegexError = 130;
247 pub const G_REGEX_ERROR_POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED: GRegexError = 131;
248 pub const G_REGEX_ERROR_HEX_CODE_TOO_LARGE: GRegexError = 134;
249 pub const G_REGEX_ERROR_INVALID_CONDITION: GRegexError = 135;
250 pub const G_REGEX_ERROR_SINGLE_BYTE_MATCH_IN_LOOKBEHIND: GRegexError = 136;
251 pub const G_REGEX_ERROR_INFINITE_LOOP: GRegexError = 140;
252 pub const G_REGEX_ERROR_MISSING_SUBPATTERN_NAME_TERMINATOR: GRegexError = 142;
253 pub const G_REGEX_ERROR_DUPLICATE_SUBPATTERN_NAME: GRegexError = 143;
254 pub const G_REGEX_ERROR_MALFORMED_PROPERTY: GRegexError = 146;
255 pub const G_REGEX_ERROR_UNKNOWN_PROPERTY: GRegexError = 147;
256 pub const G_REGEX_ERROR_SUBPATTERN_NAME_TOO_LONG: GRegexError = 148;
257 pub const G_REGEX_ERROR_TOO_MANY_SUBPATTERNS: GRegexError = 149;
258 pub const G_REGEX_ERROR_INVALID_OCTAL_VALUE: GRegexError = 151;
259 pub const G_REGEX_ERROR_TOO_MANY_BRANCHES_IN_DEFINE: GRegexError = 154;
260 pub const G_REGEX_ERROR_DEFINE_REPETION: GRegexError = 155;
261 pub const G_REGEX_ERROR_INCONSISTENT_NEWLINE_OPTIONS: GRegexError = 156;
262 pub const G_REGEX_ERROR_MISSING_BACK_REFERENCE: GRegexError = 157;
263 pub const G_REGEX_ERROR_INVALID_RELATIVE_REFERENCE: GRegexError = 158;
264 pub const G_REGEX_ERROR_BACKTRACKING_CONTROL_VERB_ARGUMENT_FORBIDDEN: GRegexError = 159;
265 pub const G_REGEX_ERROR_UNKNOWN_BACKTRACKING_CONTROL_VERB: GRegexError = 160;
266 pub const G_REGEX_ERROR_NUMBER_TOO_BIG: GRegexError = 161;
267 pub const G_REGEX_ERROR_MISSING_SUBPATTERN_NAME: GRegexError = 162;
268 pub const G_REGEX_ERROR_MISSING_DIGIT: GRegexError = 163;
269 pub const G_REGEX_ERROR_INVALID_DATA_CHARACTER: GRegexError = 164;
270 pub const G_REGEX_ERROR_EXTRA_SUBPATTERN_NAME: GRegexError = 165;
271 pub const G_REGEX_ERROR_BACKTRACKING_CONTROL_VERB_ARGUMENT_REQUIRED: GRegexError = 166;
272 pub const G_REGEX_ERROR_INVALID_CONTROL_CHAR: GRegexError = 168;
273 pub const G_REGEX_ERROR_MISSING_NAME: GRegexError = 169;
274 pub const G_REGEX_ERROR_NOT_SUPPORTED_IN_CLASS: GRegexError = 171;
275 pub const G_REGEX_ERROR_TOO_MANY_FORWARD_REFERENCES: GRegexError = 172;
276 pub const G_REGEX_ERROR_NAME_TOO_LONG: GRegexError = 175;
277 pub const G_REGEX_ERROR_CHARACTER_VALUE_TOO_LARGE: GRegexError = 176;
278 
279 pub type GSeekType = c_int;
280 pub const G_SEEK_CUR: GSeekType = 0;
281 pub const G_SEEK_SET: GSeekType = 1;
282 pub const G_SEEK_END: GSeekType = 2;
283 
284 pub type GShellError = c_int;
285 pub const G_SHELL_ERROR_BAD_QUOTING: GShellError = 0;
286 pub const G_SHELL_ERROR_EMPTY_STRING: GShellError = 1;
287 pub const G_SHELL_ERROR_FAILED: GShellError = 2;
288 
289 pub type GSliceConfig = c_int;
290 pub const G_SLICE_CONFIG_ALWAYS_MALLOC: GSliceConfig = 1;
291 pub const G_SLICE_CONFIG_BYPASS_MAGAZINES: GSliceConfig = 2;
292 pub const G_SLICE_CONFIG_WORKING_SET_MSECS: GSliceConfig = 3;
293 pub const G_SLICE_CONFIG_COLOR_INCREMENT: GSliceConfig = 4;
294 pub const G_SLICE_CONFIG_CHUNK_SIZES: GSliceConfig = 5;
295 pub const G_SLICE_CONFIG_CONTENTION_COUNTER: GSliceConfig = 6;
296 
297 pub type GSpawnError = c_int;
298 pub const G_SPAWN_ERROR_FORK: GSpawnError = 0;
299 pub const G_SPAWN_ERROR_READ: GSpawnError = 1;
300 pub const G_SPAWN_ERROR_CHDIR: GSpawnError = 2;
301 pub const G_SPAWN_ERROR_ACCES: GSpawnError = 3;
302 pub const G_SPAWN_ERROR_PERM: GSpawnError = 4;
303 pub const G_SPAWN_ERROR_TOO_BIG: GSpawnError = 5;
304 pub const G_SPAWN_ERROR_2BIG: GSpawnError = 5;
305 pub const G_SPAWN_ERROR_NOEXEC: GSpawnError = 6;
306 pub const G_SPAWN_ERROR_NAMETOOLONG: GSpawnError = 7;
307 pub const G_SPAWN_ERROR_NOENT: GSpawnError = 8;
308 pub const G_SPAWN_ERROR_NOMEM: GSpawnError = 9;
309 pub const G_SPAWN_ERROR_NOTDIR: GSpawnError = 10;
310 pub const G_SPAWN_ERROR_LOOP: GSpawnError = 11;
311 pub const G_SPAWN_ERROR_TXTBUSY: GSpawnError = 12;
312 pub const G_SPAWN_ERROR_IO: GSpawnError = 13;
313 pub const G_SPAWN_ERROR_NFILE: GSpawnError = 14;
314 pub const G_SPAWN_ERROR_MFILE: GSpawnError = 15;
315 pub const G_SPAWN_ERROR_INVAL: GSpawnError = 16;
316 pub const G_SPAWN_ERROR_ISDIR: GSpawnError = 17;
317 pub const G_SPAWN_ERROR_LIBBAD: GSpawnError = 18;
318 pub const G_SPAWN_ERROR_FAILED: GSpawnError = 19;
319 
320 pub type GTestFileType = c_int;
321 pub const G_TEST_DIST: GTestFileType = 0;
322 pub const G_TEST_BUILT: GTestFileType = 1;
323 
324 pub type GTestLogType = c_int;
325 pub const G_TEST_LOG_NONE: GTestLogType = 0;
326 pub const G_TEST_LOG_ERROR: GTestLogType = 1;
327 pub const G_TEST_LOG_START_BINARY: GTestLogType = 2;
328 pub const G_TEST_LOG_LIST_CASE: GTestLogType = 3;
329 pub const G_TEST_LOG_SKIP_CASE: GTestLogType = 4;
330 pub const G_TEST_LOG_START_CASE: GTestLogType = 5;
331 pub const G_TEST_LOG_STOP_CASE: GTestLogType = 6;
332 pub const G_TEST_LOG_MIN_RESULT: GTestLogType = 7;
333 pub const G_TEST_LOG_MAX_RESULT: GTestLogType = 8;
334 pub const G_TEST_LOG_MESSAGE: GTestLogType = 9;
335 pub const G_TEST_LOG_START_SUITE: GTestLogType = 10;
336 pub const G_TEST_LOG_STOP_SUITE: GTestLogType = 11;
337 
338 pub type GTestResult = c_int;
339 pub const G_TEST_RUN_SUCCESS: GTestResult = 0;
340 pub const G_TEST_RUN_SKIPPED: GTestResult = 1;
341 pub const G_TEST_RUN_FAILURE: GTestResult = 2;
342 pub const G_TEST_RUN_INCOMPLETE: GTestResult = 3;
343 
344 pub type GThreadError = c_int;
345 pub const G_THREAD_ERROR_AGAIN: GThreadError = 0;
346 
347 pub type GTimeType = c_int;
348 pub const G_TIME_TYPE_STANDARD: GTimeType = 0;
349 pub const G_TIME_TYPE_DAYLIGHT: GTimeType = 1;
350 pub const G_TIME_TYPE_UNIVERSAL: GTimeType = 2;
351 
352 pub type GTokenType = c_int;
353 pub const G_TOKEN_EOF: GTokenType = 0;
354 pub const G_TOKEN_LEFT_PAREN: GTokenType = 40;
355 pub const G_TOKEN_RIGHT_PAREN: GTokenType = 41;
356 pub const G_TOKEN_LEFT_CURLY: GTokenType = 123;
357 pub const G_TOKEN_RIGHT_CURLY: GTokenType = 125;
358 pub const G_TOKEN_LEFT_BRACE: GTokenType = 91;
359 pub const G_TOKEN_RIGHT_BRACE: GTokenType = 93;
360 pub const G_TOKEN_EQUAL_SIGN: GTokenType = 61;
361 pub const G_TOKEN_COMMA: GTokenType = 44;
362 pub const G_TOKEN_NONE: GTokenType = 256;
363 pub const G_TOKEN_ERROR: GTokenType = 257;
364 pub const G_TOKEN_CHAR: GTokenType = 258;
365 pub const G_TOKEN_BINARY: GTokenType = 259;
366 pub const G_TOKEN_OCTAL: GTokenType = 260;
367 pub const G_TOKEN_INT: GTokenType = 261;
368 pub const G_TOKEN_HEX: GTokenType = 262;
369 pub const G_TOKEN_FLOAT: GTokenType = 263;
370 pub const G_TOKEN_STRING: GTokenType = 264;
371 pub const G_TOKEN_SYMBOL: GTokenType = 265;
372 pub const G_TOKEN_IDENTIFIER: GTokenType = 266;
373 pub const G_TOKEN_IDENTIFIER_NULL: GTokenType = 267;
374 pub const G_TOKEN_COMMENT_SINGLE: GTokenType = 268;
375 pub const G_TOKEN_COMMENT_MULTI: GTokenType = 269;
376 
377 pub type GTraverseType = c_int;
378 pub const G_IN_ORDER: GTraverseType = 0;
379 pub const G_PRE_ORDER: GTraverseType = 1;
380 pub const G_POST_ORDER: GTraverseType = 2;
381 pub const G_LEVEL_ORDER: GTraverseType = 3;
382 
383 pub type GUnicodeBreakType = c_int;
384 pub const G_UNICODE_BREAK_MANDATORY: GUnicodeBreakType = 0;
385 pub const G_UNICODE_BREAK_CARRIAGE_RETURN: GUnicodeBreakType = 1;
386 pub const G_UNICODE_BREAK_LINE_FEED: GUnicodeBreakType = 2;
387 pub const G_UNICODE_BREAK_COMBINING_MARK: GUnicodeBreakType = 3;
388 pub const G_UNICODE_BREAK_SURROGATE: GUnicodeBreakType = 4;
389 pub const G_UNICODE_BREAK_ZERO_WIDTH_SPACE: GUnicodeBreakType = 5;
390 pub const G_UNICODE_BREAK_INSEPARABLE: GUnicodeBreakType = 6;
391 pub const G_UNICODE_BREAK_NON_BREAKING_GLUE: GUnicodeBreakType = 7;
392 pub const G_UNICODE_BREAK_CONTINGENT: GUnicodeBreakType = 8;
393 pub const G_UNICODE_BREAK_SPACE: GUnicodeBreakType = 9;
394 pub const G_UNICODE_BREAK_AFTER: GUnicodeBreakType = 10;
395 pub const G_UNICODE_BREAK_BEFORE: GUnicodeBreakType = 11;
396 pub const G_UNICODE_BREAK_BEFORE_AND_AFTER: GUnicodeBreakType = 12;
397 pub const G_UNICODE_BREAK_HYPHEN: GUnicodeBreakType = 13;
398 pub const G_UNICODE_BREAK_NON_STARTER: GUnicodeBreakType = 14;
399 pub const G_UNICODE_BREAK_OPEN_PUNCTUATION: GUnicodeBreakType = 15;
400 pub const G_UNICODE_BREAK_CLOSE_PUNCTUATION: GUnicodeBreakType = 16;
401 pub const G_UNICODE_BREAK_QUOTATION: GUnicodeBreakType = 17;
402 pub const G_UNICODE_BREAK_EXCLAMATION: GUnicodeBreakType = 18;
403 pub const G_UNICODE_BREAK_IDEOGRAPHIC: GUnicodeBreakType = 19;
404 pub const G_UNICODE_BREAK_NUMERIC: GUnicodeBreakType = 20;
405 pub const G_UNICODE_BREAK_INFIX_SEPARATOR: GUnicodeBreakType = 21;
406 pub const G_UNICODE_BREAK_SYMBOL: GUnicodeBreakType = 22;
407 pub const G_UNICODE_BREAK_ALPHABETIC: GUnicodeBreakType = 23;
408 pub const G_UNICODE_BREAK_PREFIX: GUnicodeBreakType = 24;
409 pub const G_UNICODE_BREAK_POSTFIX: GUnicodeBreakType = 25;
410 pub const G_UNICODE_BREAK_COMPLEX_CONTEXT: GUnicodeBreakType = 26;
411 pub const G_UNICODE_BREAK_AMBIGUOUS: GUnicodeBreakType = 27;
412 pub const G_UNICODE_BREAK_UNKNOWN: GUnicodeBreakType = 28;
413 pub const G_UNICODE_BREAK_NEXT_LINE: GUnicodeBreakType = 29;
414 pub const G_UNICODE_BREAK_WORD_JOINER: GUnicodeBreakType = 30;
415 pub const G_UNICODE_BREAK_HANGUL_L_JAMO: GUnicodeBreakType = 31;
416 pub const G_UNICODE_BREAK_HANGUL_V_JAMO: GUnicodeBreakType = 32;
417 pub const G_UNICODE_BREAK_HANGUL_T_JAMO: GUnicodeBreakType = 33;
418 pub const G_UNICODE_BREAK_HANGUL_LV_SYLLABLE: GUnicodeBreakType = 34;
419 pub const G_UNICODE_BREAK_HANGUL_LVT_SYLLABLE: GUnicodeBreakType = 35;
420 pub const G_UNICODE_BREAK_CLOSE_PARANTHESIS: GUnicodeBreakType = 36;
421 pub const G_UNICODE_BREAK_CONDITIONAL_JAPANESE_STARTER: GUnicodeBreakType = 37;
422 pub const G_UNICODE_BREAK_HEBREW_LETTER: GUnicodeBreakType = 38;
423 pub const G_UNICODE_BREAK_REGIONAL_INDICATOR: GUnicodeBreakType = 39;
424 pub const G_UNICODE_BREAK_EMOJI_BASE: GUnicodeBreakType = 40;
425 pub const G_UNICODE_BREAK_EMOJI_MODIFIER: GUnicodeBreakType = 41;
426 pub const G_UNICODE_BREAK_ZERO_WIDTH_JOINER: GUnicodeBreakType = 42;
427 
428 pub type GUnicodeScript = c_int;
429 pub const G_UNICODE_SCRIPT_INVALID_CODE: GUnicodeScript = -1;
430 pub const G_UNICODE_SCRIPT_COMMON: GUnicodeScript = 0;
431 pub const G_UNICODE_SCRIPT_INHERITED: GUnicodeScript = 1;
432 pub const G_UNICODE_SCRIPT_ARABIC: GUnicodeScript = 2;
433 pub const G_UNICODE_SCRIPT_ARMENIAN: GUnicodeScript = 3;
434 pub const G_UNICODE_SCRIPT_BENGALI: GUnicodeScript = 4;
435 pub const G_UNICODE_SCRIPT_BOPOMOFO: GUnicodeScript = 5;
436 pub const G_UNICODE_SCRIPT_CHEROKEE: GUnicodeScript = 6;
437 pub const G_UNICODE_SCRIPT_COPTIC: GUnicodeScript = 7;
438 pub const G_UNICODE_SCRIPT_CYRILLIC: GUnicodeScript = 8;
439 pub const G_UNICODE_SCRIPT_DESERET: GUnicodeScript = 9;
440 pub const G_UNICODE_SCRIPT_DEVANAGARI: GUnicodeScript = 10;
441 pub const G_UNICODE_SCRIPT_ETHIOPIC: GUnicodeScript = 11;
442 pub const G_UNICODE_SCRIPT_GEORGIAN: GUnicodeScript = 12;
443 pub const G_UNICODE_SCRIPT_GOTHIC: GUnicodeScript = 13;
444 pub const G_UNICODE_SCRIPT_GREEK: GUnicodeScript = 14;
445 pub const G_UNICODE_SCRIPT_GUJARATI: GUnicodeScript = 15;
446 pub const G_UNICODE_SCRIPT_GURMUKHI: GUnicodeScript = 16;
447 pub const G_UNICODE_SCRIPT_HAN: GUnicodeScript = 17;
448 pub const G_UNICODE_SCRIPT_HANGUL: GUnicodeScript = 18;
449 pub const G_UNICODE_SCRIPT_HEBREW: GUnicodeScript = 19;
450 pub const G_UNICODE_SCRIPT_HIRAGANA: GUnicodeScript = 20;
451 pub const G_UNICODE_SCRIPT_KANNADA: GUnicodeScript = 21;
452 pub const G_UNICODE_SCRIPT_KATAKANA: GUnicodeScript = 22;
453 pub const G_UNICODE_SCRIPT_KHMER: GUnicodeScript = 23;
454 pub const G_UNICODE_SCRIPT_LAO: GUnicodeScript = 24;
455 pub const G_UNICODE_SCRIPT_LATIN: GUnicodeScript = 25;
456 pub const G_UNICODE_SCRIPT_MALAYALAM: GUnicodeScript = 26;
457 pub const G_UNICODE_SCRIPT_MONGOLIAN: GUnicodeScript = 27;
458 pub const G_UNICODE_SCRIPT_MYANMAR: GUnicodeScript = 28;
459 pub const G_UNICODE_SCRIPT_OGHAM: GUnicodeScript = 29;
460 pub const G_UNICODE_SCRIPT_OLD_ITALIC: GUnicodeScript = 30;
461 pub const G_UNICODE_SCRIPT_ORIYA: GUnicodeScript = 31;
462 pub const G_UNICODE_SCRIPT_RUNIC: GUnicodeScript = 32;
463 pub const G_UNICODE_SCRIPT_SINHALA: GUnicodeScript = 33;
464 pub const G_UNICODE_SCRIPT_SYRIAC: GUnicodeScript = 34;
465 pub const G_UNICODE_SCRIPT_TAMIL: GUnicodeScript = 35;
466 pub const G_UNICODE_SCRIPT_TELUGU: GUnicodeScript = 36;
467 pub const G_UNICODE_SCRIPT_THAANA: GUnicodeScript = 37;
468 pub const G_UNICODE_SCRIPT_THAI: GUnicodeScript = 38;
469 pub const G_UNICODE_SCRIPT_TIBETAN: GUnicodeScript = 39;
470 pub const G_UNICODE_SCRIPT_CANADIAN_ABORIGINAL: GUnicodeScript = 40;
471 pub const G_UNICODE_SCRIPT_YI: GUnicodeScript = 41;
472 pub const G_UNICODE_SCRIPT_TAGALOG: GUnicodeScript = 42;
473 pub const G_UNICODE_SCRIPT_HANUNOO: GUnicodeScript = 43;
474 pub const G_UNICODE_SCRIPT_BUHID: GUnicodeScript = 44;
475 pub const G_UNICODE_SCRIPT_TAGBANWA: GUnicodeScript = 45;
476 pub const G_UNICODE_SCRIPT_BRAILLE: GUnicodeScript = 46;
477 pub const G_UNICODE_SCRIPT_CYPRIOT: GUnicodeScript = 47;
478 pub const G_UNICODE_SCRIPT_LIMBU: GUnicodeScript = 48;
479 pub const G_UNICODE_SCRIPT_OSMANYA: GUnicodeScript = 49;
480 pub const G_UNICODE_SCRIPT_SHAVIAN: GUnicodeScript = 50;
481 pub const G_UNICODE_SCRIPT_LINEAR_B: GUnicodeScript = 51;
482 pub const G_UNICODE_SCRIPT_TAI_LE: GUnicodeScript = 52;
483 pub const G_UNICODE_SCRIPT_UGARITIC: GUnicodeScript = 53;
484 pub const G_UNICODE_SCRIPT_NEW_TAI_LUE: GUnicodeScript = 54;
485 pub const G_UNICODE_SCRIPT_BUGINESE: GUnicodeScript = 55;
486 pub const G_UNICODE_SCRIPT_GLAGOLITIC: GUnicodeScript = 56;
487 pub const G_UNICODE_SCRIPT_TIFINAGH: GUnicodeScript = 57;
488 pub const G_UNICODE_SCRIPT_SYLOTI_NAGRI: GUnicodeScript = 58;
489 pub const G_UNICODE_SCRIPT_OLD_PERSIAN: GUnicodeScript = 59;
490 pub const G_UNICODE_SCRIPT_KHAROSHTHI: GUnicodeScript = 60;
491 pub const G_UNICODE_SCRIPT_UNKNOWN: GUnicodeScript = 61;
492 pub const G_UNICODE_SCRIPT_BALINESE: GUnicodeScript = 62;
493 pub const G_UNICODE_SCRIPT_CUNEIFORM: GUnicodeScript = 63;
494 pub const G_UNICODE_SCRIPT_PHOENICIAN: GUnicodeScript = 64;
495 pub const G_UNICODE_SCRIPT_PHAGS_PA: GUnicodeScript = 65;
496 pub const G_UNICODE_SCRIPT_NKO: GUnicodeScript = 66;
497 pub const G_UNICODE_SCRIPT_KAYAH_LI: GUnicodeScript = 67;
498 pub const G_UNICODE_SCRIPT_LEPCHA: GUnicodeScript = 68;
499 pub const G_UNICODE_SCRIPT_REJANG: GUnicodeScript = 69;
500 pub const G_UNICODE_SCRIPT_SUNDANESE: GUnicodeScript = 70;
501 pub const G_UNICODE_SCRIPT_SAURASHTRA: GUnicodeScript = 71;
502 pub const G_UNICODE_SCRIPT_CHAM: GUnicodeScript = 72;
503 pub const G_UNICODE_SCRIPT_OL_CHIKI: GUnicodeScript = 73;
504 pub const G_UNICODE_SCRIPT_VAI: GUnicodeScript = 74;
505 pub const G_UNICODE_SCRIPT_CARIAN: GUnicodeScript = 75;
506 pub const G_UNICODE_SCRIPT_LYCIAN: GUnicodeScript = 76;
507 pub const G_UNICODE_SCRIPT_LYDIAN: GUnicodeScript = 77;
508 pub const G_UNICODE_SCRIPT_AVESTAN: GUnicodeScript = 78;
509 pub const G_UNICODE_SCRIPT_BAMUM: GUnicodeScript = 79;
510 pub const G_UNICODE_SCRIPT_EGYPTIAN_HIEROGLYPHS: GUnicodeScript = 80;
511 pub const G_UNICODE_SCRIPT_IMPERIAL_ARAMAIC: GUnicodeScript = 81;
512 pub const G_UNICODE_SCRIPT_INSCRIPTIONAL_PAHLAVI: GUnicodeScript = 82;
513 pub const G_UNICODE_SCRIPT_INSCRIPTIONAL_PARTHIAN: GUnicodeScript = 83;
514 pub const G_UNICODE_SCRIPT_JAVANESE: GUnicodeScript = 84;
515 pub const G_UNICODE_SCRIPT_KAITHI: GUnicodeScript = 85;
516 pub const G_UNICODE_SCRIPT_LISU: GUnicodeScript = 86;
517 pub const G_UNICODE_SCRIPT_MEETEI_MAYEK: GUnicodeScript = 87;
518 pub const G_UNICODE_SCRIPT_OLD_SOUTH_ARABIAN: GUnicodeScript = 88;
519 pub const G_UNICODE_SCRIPT_OLD_TURKIC: GUnicodeScript = 89;
520 pub const G_UNICODE_SCRIPT_SAMARITAN: GUnicodeScript = 90;
521 pub const G_UNICODE_SCRIPT_TAI_THAM: GUnicodeScript = 91;
522 pub const G_UNICODE_SCRIPT_TAI_VIET: GUnicodeScript = 92;
523 pub const G_UNICODE_SCRIPT_BATAK: GUnicodeScript = 93;
524 pub const G_UNICODE_SCRIPT_BRAHMI: GUnicodeScript = 94;
525 pub const G_UNICODE_SCRIPT_MANDAIC: GUnicodeScript = 95;
526 pub const G_UNICODE_SCRIPT_CHAKMA: GUnicodeScript = 96;
527 pub const G_UNICODE_SCRIPT_MEROITIC_CURSIVE: GUnicodeScript = 97;
528 pub const G_UNICODE_SCRIPT_MEROITIC_HIEROGLYPHS: GUnicodeScript = 98;
529 pub const G_UNICODE_SCRIPT_MIAO: GUnicodeScript = 99;
530 pub const G_UNICODE_SCRIPT_SHARADA: GUnicodeScript = 100;
531 pub const G_UNICODE_SCRIPT_SORA_SOMPENG: GUnicodeScript = 101;
532 pub const G_UNICODE_SCRIPT_TAKRI: GUnicodeScript = 102;
533 pub const G_UNICODE_SCRIPT_BASSA_VAH: GUnicodeScript = 103;
534 pub const G_UNICODE_SCRIPT_CAUCASIAN_ALBANIAN: GUnicodeScript = 104;
535 pub const G_UNICODE_SCRIPT_DUPLOYAN: GUnicodeScript = 105;
536 pub const G_UNICODE_SCRIPT_ELBASAN: GUnicodeScript = 106;
537 pub const G_UNICODE_SCRIPT_GRANTHA: GUnicodeScript = 107;
538 pub const G_UNICODE_SCRIPT_KHOJKI: GUnicodeScript = 108;
539 pub const G_UNICODE_SCRIPT_KHUDAWADI: GUnicodeScript = 109;
540 pub const G_UNICODE_SCRIPT_LINEAR_A: GUnicodeScript = 110;
541 pub const G_UNICODE_SCRIPT_MAHAJANI: GUnicodeScript = 111;
542 pub const G_UNICODE_SCRIPT_MANICHAEAN: GUnicodeScript = 112;
543 pub const G_UNICODE_SCRIPT_MENDE_KIKAKUI: GUnicodeScript = 113;
544 pub const G_UNICODE_SCRIPT_MODI: GUnicodeScript = 114;
545 pub const G_UNICODE_SCRIPT_MRO: GUnicodeScript = 115;
546 pub const G_UNICODE_SCRIPT_NABATAEAN: GUnicodeScript = 116;
547 pub const G_UNICODE_SCRIPT_OLD_NORTH_ARABIAN: GUnicodeScript = 117;
548 pub const G_UNICODE_SCRIPT_OLD_PERMIC: GUnicodeScript = 118;
549 pub const G_UNICODE_SCRIPT_PAHAWH_HMONG: GUnicodeScript = 119;
550 pub const G_UNICODE_SCRIPT_PALMYRENE: GUnicodeScript = 120;
551 pub const G_UNICODE_SCRIPT_PAU_CIN_HAU: GUnicodeScript = 121;
552 pub const G_UNICODE_SCRIPT_PSALTER_PAHLAVI: GUnicodeScript = 122;
553 pub const G_UNICODE_SCRIPT_SIDDHAM: GUnicodeScript = 123;
554 pub const G_UNICODE_SCRIPT_TIRHUTA: GUnicodeScript = 124;
555 pub const G_UNICODE_SCRIPT_WARANG_CITI: GUnicodeScript = 125;
556 pub const G_UNICODE_SCRIPT_AHOM: GUnicodeScript = 126;
557 pub const G_UNICODE_SCRIPT_ANATOLIAN_HIEROGLYPHS: GUnicodeScript = 127;
558 pub const G_UNICODE_SCRIPT_HATRAN: GUnicodeScript = 128;
559 pub const G_UNICODE_SCRIPT_MULTANI: GUnicodeScript = 129;
560 pub const G_UNICODE_SCRIPT_OLD_HUNGARIAN: GUnicodeScript = 130;
561 pub const G_UNICODE_SCRIPT_SIGNWRITING: GUnicodeScript = 131;
562 pub const G_UNICODE_SCRIPT_ADLAM: GUnicodeScript = 132;
563 pub const G_UNICODE_SCRIPT_BHAIKSUKI: GUnicodeScript = 133;
564 pub const G_UNICODE_SCRIPT_MARCHEN: GUnicodeScript = 134;
565 pub const G_UNICODE_SCRIPT_NEWA: GUnicodeScript = 135;
566 pub const G_UNICODE_SCRIPT_OSAGE: GUnicodeScript = 136;
567 pub const G_UNICODE_SCRIPT_TANGUT: GUnicodeScript = 137;
568 pub const G_UNICODE_SCRIPT_MASARAM_GONDI: GUnicodeScript = 138;
569 pub const G_UNICODE_SCRIPT_NUSHU: GUnicodeScript = 139;
570 pub const G_UNICODE_SCRIPT_SOYOMBO: GUnicodeScript = 140;
571 pub const G_UNICODE_SCRIPT_ZANABAZAR_SQUARE: GUnicodeScript = 141;
572 pub const G_UNICODE_SCRIPT_DOGRA: GUnicodeScript = 142;
573 pub const G_UNICODE_SCRIPT_GUNJALA_GONDI: GUnicodeScript = 143;
574 pub const G_UNICODE_SCRIPT_HANIFI_ROHINGYA: GUnicodeScript = 144;
575 pub const G_UNICODE_SCRIPT_MAKASAR: GUnicodeScript = 145;
576 pub const G_UNICODE_SCRIPT_MEDEFAIDRIN: GUnicodeScript = 146;
577 pub const G_UNICODE_SCRIPT_OLD_SOGDIAN: GUnicodeScript = 147;
578 pub const G_UNICODE_SCRIPT_SOGDIAN: GUnicodeScript = 148;
579 pub const G_UNICODE_SCRIPT_ELYMAIC: GUnicodeScript = 149;
580 pub const G_UNICODE_SCRIPT_NANDINAGARI: GUnicodeScript = 150;
581 pub const G_UNICODE_SCRIPT_NYIAKENG_PUACHUE_HMONG: GUnicodeScript = 151;
582 pub const G_UNICODE_SCRIPT_WANCHO: GUnicodeScript = 152;
583 pub const G_UNICODE_SCRIPT_CHORASMIAN: GUnicodeScript = 153;
584 pub const G_UNICODE_SCRIPT_DIVES_AKURU: GUnicodeScript = 154;
585 pub const G_UNICODE_SCRIPT_KHITAN_SMALL_SCRIPT: GUnicodeScript = 155;
586 pub const G_UNICODE_SCRIPT_YEZIDI: GUnicodeScript = 156;
587 
588 pub type GUnicodeType = c_int;
589 pub const G_UNICODE_CONTROL: GUnicodeType = 0;
590 pub const G_UNICODE_FORMAT: GUnicodeType = 1;
591 pub const G_UNICODE_UNASSIGNED: GUnicodeType = 2;
592 pub const G_UNICODE_PRIVATE_USE: GUnicodeType = 3;
593 pub const G_UNICODE_SURROGATE: GUnicodeType = 4;
594 pub const G_UNICODE_LOWERCASE_LETTER: GUnicodeType = 5;
595 pub const G_UNICODE_MODIFIER_LETTER: GUnicodeType = 6;
596 pub const G_UNICODE_OTHER_LETTER: GUnicodeType = 7;
597 pub const G_UNICODE_TITLECASE_LETTER: GUnicodeType = 8;
598 pub const G_UNICODE_UPPERCASE_LETTER: GUnicodeType = 9;
599 pub const G_UNICODE_SPACING_MARK: GUnicodeType = 10;
600 pub const G_UNICODE_ENCLOSING_MARK: GUnicodeType = 11;
601 pub const G_UNICODE_NON_SPACING_MARK: GUnicodeType = 12;
602 pub const G_UNICODE_DECIMAL_NUMBER: GUnicodeType = 13;
603 pub const G_UNICODE_LETTER_NUMBER: GUnicodeType = 14;
604 pub const G_UNICODE_OTHER_NUMBER: GUnicodeType = 15;
605 pub const G_UNICODE_CONNECT_PUNCTUATION: GUnicodeType = 16;
606 pub const G_UNICODE_DASH_PUNCTUATION: GUnicodeType = 17;
607 pub const G_UNICODE_CLOSE_PUNCTUATION: GUnicodeType = 18;
608 pub const G_UNICODE_FINAL_PUNCTUATION: GUnicodeType = 19;
609 pub const G_UNICODE_INITIAL_PUNCTUATION: GUnicodeType = 20;
610 pub const G_UNICODE_OTHER_PUNCTUATION: GUnicodeType = 21;
611 pub const G_UNICODE_OPEN_PUNCTUATION: GUnicodeType = 22;
612 pub const G_UNICODE_CURRENCY_SYMBOL: GUnicodeType = 23;
613 pub const G_UNICODE_MODIFIER_SYMBOL: GUnicodeType = 24;
614 pub const G_UNICODE_MATH_SYMBOL: GUnicodeType = 25;
615 pub const G_UNICODE_OTHER_SYMBOL: GUnicodeType = 26;
616 pub const G_UNICODE_LINE_SEPARATOR: GUnicodeType = 27;
617 pub const G_UNICODE_PARAGRAPH_SEPARATOR: GUnicodeType = 28;
618 pub const G_UNICODE_SPACE_SEPARATOR: GUnicodeType = 29;
619 
620 pub type GUriError = c_int;
621 pub const G_URI_ERROR_FAILED: GUriError = 0;
622 pub const G_URI_ERROR_BAD_SCHEME: GUriError = 1;
623 pub const G_URI_ERROR_BAD_USER: GUriError = 2;
624 pub const G_URI_ERROR_BAD_PASSWORD: GUriError = 3;
625 pub const G_URI_ERROR_BAD_AUTH_PARAMS: GUriError = 4;
626 pub const G_URI_ERROR_BAD_HOST: GUriError = 5;
627 pub const G_URI_ERROR_BAD_PORT: GUriError = 6;
628 pub const G_URI_ERROR_BAD_PATH: GUriError = 7;
629 pub const G_URI_ERROR_BAD_QUERY: GUriError = 8;
630 pub const G_URI_ERROR_BAD_FRAGMENT: GUriError = 9;
631 
632 pub type GUserDirectory = c_int;
633 pub const G_USER_DIRECTORY_DESKTOP: GUserDirectory = 0;
634 pub const G_USER_DIRECTORY_DOCUMENTS: GUserDirectory = 1;
635 pub const G_USER_DIRECTORY_DOWNLOAD: GUserDirectory = 2;
636 pub const G_USER_DIRECTORY_MUSIC: GUserDirectory = 3;
637 pub const G_USER_DIRECTORY_PICTURES: GUserDirectory = 4;
638 pub const G_USER_DIRECTORY_PUBLIC_SHARE: GUserDirectory = 5;
639 pub const G_USER_DIRECTORY_TEMPLATES: GUserDirectory = 6;
640 pub const G_USER_DIRECTORY_VIDEOS: GUserDirectory = 7;
641 pub const G_USER_N_DIRECTORIES: GUserDirectory = 8;
642 
643 pub type GVariantClass = c_int;
644 pub const G_VARIANT_CLASS_BOOLEAN: GVariantClass = 98;
645 pub const G_VARIANT_CLASS_BYTE: GVariantClass = 121;
646 pub const G_VARIANT_CLASS_INT16: GVariantClass = 110;
647 pub const G_VARIANT_CLASS_UINT16: GVariantClass = 113;
648 pub const G_VARIANT_CLASS_INT32: GVariantClass = 105;
649 pub const G_VARIANT_CLASS_UINT32: GVariantClass = 117;
650 pub const G_VARIANT_CLASS_INT64: GVariantClass = 120;
651 pub const G_VARIANT_CLASS_UINT64: GVariantClass = 116;
652 pub const G_VARIANT_CLASS_HANDLE: GVariantClass = 104;
653 pub const G_VARIANT_CLASS_DOUBLE: GVariantClass = 100;
654 pub const G_VARIANT_CLASS_STRING: GVariantClass = 115;
655 pub const G_VARIANT_CLASS_OBJECT_PATH: GVariantClass = 111;
656 pub const G_VARIANT_CLASS_SIGNATURE: GVariantClass = 103;
657 pub const G_VARIANT_CLASS_VARIANT: GVariantClass = 118;
658 pub const G_VARIANT_CLASS_MAYBE: GVariantClass = 109;
659 pub const G_VARIANT_CLASS_ARRAY: GVariantClass = 97;
660 pub const G_VARIANT_CLASS_TUPLE: GVariantClass = 40;
661 pub const G_VARIANT_CLASS_DICT_ENTRY: GVariantClass = 123;
662 
663 pub type GVariantParseError = c_int;
664 pub const G_VARIANT_PARSE_ERROR_FAILED: GVariantParseError = 0;
665 pub const G_VARIANT_PARSE_ERROR_BASIC_TYPE_EXPECTED: GVariantParseError = 1;
666 pub const G_VARIANT_PARSE_ERROR_CANNOT_INFER_TYPE: GVariantParseError = 2;
667 pub const G_VARIANT_PARSE_ERROR_DEFINITE_TYPE_EXPECTED: GVariantParseError = 3;
668 pub const G_VARIANT_PARSE_ERROR_INPUT_NOT_AT_END: GVariantParseError = 4;
669 pub const G_VARIANT_PARSE_ERROR_INVALID_CHARACTER: GVariantParseError = 5;
670 pub const G_VARIANT_PARSE_ERROR_INVALID_FORMAT_STRING: GVariantParseError = 6;
671 pub const G_VARIANT_PARSE_ERROR_INVALID_OBJECT_PATH: GVariantParseError = 7;
672 pub const G_VARIANT_PARSE_ERROR_INVALID_SIGNATURE: GVariantParseError = 8;
673 pub const G_VARIANT_PARSE_ERROR_INVALID_TYPE_STRING: GVariantParseError = 9;
674 pub const G_VARIANT_PARSE_ERROR_NO_COMMON_TYPE: GVariantParseError = 10;
675 pub const G_VARIANT_PARSE_ERROR_NUMBER_OUT_OF_RANGE: GVariantParseError = 11;
676 pub const G_VARIANT_PARSE_ERROR_NUMBER_TOO_BIG: GVariantParseError = 12;
677 pub const G_VARIANT_PARSE_ERROR_TYPE_ERROR: GVariantParseError = 13;
678 pub const G_VARIANT_PARSE_ERROR_UNEXPECTED_TOKEN: GVariantParseError = 14;
679 pub const G_VARIANT_PARSE_ERROR_UNKNOWN_KEYWORD: GVariantParseError = 15;
680 pub const G_VARIANT_PARSE_ERROR_UNTERMINATED_STRING_CONSTANT: GVariantParseError = 16;
681 pub const G_VARIANT_PARSE_ERROR_VALUE_EXPECTED: GVariantParseError = 17;
682 pub const G_VARIANT_PARSE_ERROR_RECURSION: GVariantParseError = 18;
683 
684 // Constants
685 pub const G_ASCII_DTOSTR_BUF_SIZE: c_int = 39;
686 pub const G_BIG_ENDIAN: c_int = 4321;
687 pub const G_CSET_A_2_Z: *const c_char =
688     b"ABCDEFGHIJKLMNOPQRSTUVWXYZ\0" as *const u8 as *const c_char;
689 pub const G_CSET_DIGITS: *const c_char = b"0123456789\0" as *const u8 as *const c_char;
690 pub const G_CSET_a_2_z: *const c_char =
691     b"abcdefghijklmnopqrstuvwxyz\0" as *const u8 as *const c_char;
692 pub const G_DATALIST_FLAGS_MASK: c_int = 3;
693 pub const G_DATE_BAD_DAY: c_int = 0;
694 pub const G_DATE_BAD_JULIAN: c_int = 0;
695 pub const G_DATE_BAD_YEAR: c_int = 0;
696 pub const G_E: c_double = 2.718282;
697 pub const G_HOOK_FLAG_USER_SHIFT: c_int = 4;
698 pub const G_IEEE754_DOUBLE_BIAS: c_int = 1023;
699 pub const G_IEEE754_FLOAT_BIAS: c_int = 127;
700 pub const G_KEY_FILE_DESKTOP_GROUP: *const c_char =
701     b"Desktop Entry\0" as *const u8 as *const c_char;
702 pub const G_KEY_FILE_DESKTOP_KEY_ACTIONS: *const c_char =
703     b"Actions\0" as *const u8 as *const c_char;
704 pub const G_KEY_FILE_DESKTOP_KEY_CATEGORIES: *const c_char =
705     b"Categories\0" as *const u8 as *const c_char;
706 pub const G_KEY_FILE_DESKTOP_KEY_COMMENT: *const c_char =
707     b"Comment\0" as *const u8 as *const c_char;
708 pub const G_KEY_FILE_DESKTOP_KEY_DBUS_ACTIVATABLE: *const c_char =
709     b"DBusActivatable\0" as *const u8 as *const c_char;
710 pub const G_KEY_FILE_DESKTOP_KEY_EXEC: *const c_char = b"Exec\0" as *const u8 as *const c_char;
711 pub const G_KEY_FILE_DESKTOP_KEY_GENERIC_NAME: *const c_char =
712     b"GenericName\0" as *const u8 as *const c_char;
713 pub const G_KEY_FILE_DESKTOP_KEY_HIDDEN: *const c_char = b"Hidden\0" as *const u8 as *const c_char;
714 pub const G_KEY_FILE_DESKTOP_KEY_ICON: *const c_char = b"Icon\0" as *const u8 as *const c_char;
715 pub const G_KEY_FILE_DESKTOP_KEY_MIME_TYPE: *const c_char =
716     b"MimeType\0" as *const u8 as *const c_char;
717 pub const G_KEY_FILE_DESKTOP_KEY_NAME: *const c_char = b"Name\0" as *const u8 as *const c_char;
718 pub const G_KEY_FILE_DESKTOP_KEY_NOT_SHOW_IN: *const c_char =
719     b"NotShowIn\0" as *const u8 as *const c_char;
720 pub const G_KEY_FILE_DESKTOP_KEY_NO_DISPLAY: *const c_char =
721     b"NoDisplay\0" as *const u8 as *const c_char;
722 pub const G_KEY_FILE_DESKTOP_KEY_ONLY_SHOW_IN: *const c_char =
723     b"OnlyShowIn\0" as *const u8 as *const c_char;
724 pub const G_KEY_FILE_DESKTOP_KEY_PATH: *const c_char = b"Path\0" as *const u8 as *const c_char;
725 pub const G_KEY_FILE_DESKTOP_KEY_STARTUP_NOTIFY: *const c_char =
726     b"StartupNotify\0" as *const u8 as *const c_char;
727 pub const G_KEY_FILE_DESKTOP_KEY_STARTUP_WM_CLASS: *const c_char =
728     b"StartupWMClass\0" as *const u8 as *const c_char;
729 pub const G_KEY_FILE_DESKTOP_KEY_TERMINAL: *const c_char =
730     b"Terminal\0" as *const u8 as *const c_char;
731 pub const G_KEY_FILE_DESKTOP_KEY_TRY_EXEC: *const c_char =
732     b"TryExec\0" as *const u8 as *const c_char;
733 pub const G_KEY_FILE_DESKTOP_KEY_TYPE: *const c_char = b"Type\0" as *const u8 as *const c_char;
734 pub const G_KEY_FILE_DESKTOP_KEY_URL: *const c_char = b"URL\0" as *const u8 as *const c_char;
735 pub const G_KEY_FILE_DESKTOP_KEY_VERSION: *const c_char =
736     b"Version\0" as *const u8 as *const c_char;
737 pub const G_KEY_FILE_DESKTOP_TYPE_APPLICATION: *const c_char =
738     b"Application\0" as *const u8 as *const c_char;
739 pub const G_KEY_FILE_DESKTOP_TYPE_DIRECTORY: *const c_char =
740     b"Directory\0" as *const u8 as *const c_char;
741 pub const G_KEY_FILE_DESKTOP_TYPE_LINK: *const c_char = b"Link\0" as *const u8 as *const c_char;
742 pub const G_LITTLE_ENDIAN: c_int = 1234;
743 pub const G_LN10: c_double = 2.302585;
744 pub const G_LN2: c_double = 0.693147;
745 pub const G_LOG_2_BASE_10: c_double = 0.301030;
746 pub const G_LOG_DOMAIN: c_char = 0;
747 pub const G_LOG_FATAL_MASK: c_int = 5;
748 pub const G_LOG_LEVEL_USER_SHIFT: c_int = 8;
749 pub const G_OPTION_REMAINING: *const c_char = b"\0" as *const u8 as *const c_char;
750 pub const G_PDP_ENDIAN: c_int = 3412;
751 pub const G_PI: c_double = 3.141593;
752 pub const G_PI_2: c_double = 1.570796;
753 pub const G_PI_4: c_double = 0.785398;
754 pub const G_PRIORITY_DEFAULT: c_int = 0;
755 pub const G_PRIORITY_DEFAULT_IDLE: c_int = 200;
756 pub const G_PRIORITY_HIGH: c_int = -100;
757 pub const G_PRIORITY_HIGH_IDLE: c_int = 100;
758 pub const G_PRIORITY_LOW: c_int = 300;
759 pub const G_SOURCE_CONTINUE: gboolean = GTRUE;
760 pub const G_SOURCE_REMOVE: gboolean = GFALSE;
761 pub const G_SQRT2: c_double = 1.414214;
762 pub const G_STR_DELIMITERS: *const c_char = b"_-|> <.\0" as *const u8 as *const c_char;
763 pub const GLIB_SYSDEF_AF_INET: c_int = 2;
764 pub const GLIB_SYSDEF_AF_INET6: c_int = 10;
765 pub const GLIB_SYSDEF_AF_UNIX: c_int = 1;
766 pub const GLIB_SYSDEF_MSG_DONTROUTE: c_int = 4;
767 pub const GLIB_SYSDEF_MSG_OOB: c_int = 1;
768 pub const GLIB_SYSDEF_MSG_PEEK: c_int = 2;
769 pub const G_TEST_OPTION_ISOLATE_DIRS: *const c_char =
770     b"isolate_dirs\0" as *const u8 as *const c_char;
771 pub const G_TIME_SPAN_DAY: i64 = 86400000000;
772 pub const G_TIME_SPAN_HOUR: i64 = 3600000000;
773 pub const G_TIME_SPAN_MILLISECOND: i64 = 1000;
774 pub const G_TIME_SPAN_MINUTE: i64 = 60000000;
775 pub const G_TIME_SPAN_SECOND: i64 = 1000000;
776 pub const G_UNICHAR_MAX_DECOMPOSITION_LENGTH: c_int = 18;
777 pub const G_URI_RESERVED_CHARS_GENERIC_DELIMITERS: *const c_char =
778     b":/?#[]@\0" as *const u8 as *const c_char;
779 pub const G_URI_RESERVED_CHARS_SUBCOMPONENT_DELIMITERS: *const c_char =
780     b"!$&'()*+,;=\0" as *const u8 as *const c_char;
781 pub const G_USEC_PER_SEC: c_int = 1000000;
782 pub const G_WIN32_MSG_HANDLE: c_int = 19981206;
783 
784 // Flags
785 pub type GAsciiType = c_uint;
786 pub const G_ASCII_ALNUM: GAsciiType = 1;
787 pub const G_ASCII_ALPHA: GAsciiType = 2;
788 pub const G_ASCII_CNTRL: GAsciiType = 4;
789 pub const G_ASCII_DIGIT: GAsciiType = 8;
790 pub const G_ASCII_GRAPH: GAsciiType = 16;
791 pub const G_ASCII_LOWER: GAsciiType = 32;
792 pub const G_ASCII_PRINT: GAsciiType = 64;
793 pub const G_ASCII_PUNCT: GAsciiType = 128;
794 pub const G_ASCII_SPACE: GAsciiType = 256;
795 pub const G_ASCII_UPPER: GAsciiType = 512;
796 pub const G_ASCII_XDIGIT: GAsciiType = 1024;
797 
798 pub type GFileSetContentsFlags = c_uint;
799 pub const G_FILE_SET_CONTENTS_NONE: GFileSetContentsFlags = 0;
800 pub const G_FILE_SET_CONTENTS_CONSISTENT: GFileSetContentsFlags = 1;
801 pub const G_FILE_SET_CONTENTS_DURABLE: GFileSetContentsFlags = 2;
802 pub const G_FILE_SET_CONTENTS_ONLY_EXISTING: GFileSetContentsFlags = 4;
803 
804 pub type GFileTest = c_uint;
805 pub const G_FILE_TEST_IS_REGULAR: GFileTest = 1;
806 pub const G_FILE_TEST_IS_SYMLINK: GFileTest = 2;
807 pub const G_FILE_TEST_IS_DIR: GFileTest = 4;
808 pub const G_FILE_TEST_IS_EXECUTABLE: GFileTest = 8;
809 pub const G_FILE_TEST_EXISTS: GFileTest = 16;
810 
811 pub type GFormatSizeFlags = c_uint;
812 pub const G_FORMAT_SIZE_DEFAULT: GFormatSizeFlags = 0;
813 pub const G_FORMAT_SIZE_LONG_FORMAT: GFormatSizeFlags = 1;
814 pub const G_FORMAT_SIZE_IEC_UNITS: GFormatSizeFlags = 2;
815 pub const G_FORMAT_SIZE_BITS: GFormatSizeFlags = 4;
816 
817 pub type GHookFlagMask = c_uint;
818 pub const G_HOOK_FLAG_ACTIVE: GHookFlagMask = 1;
819 pub const G_HOOK_FLAG_IN_CALL: GHookFlagMask = 2;
820 pub const G_HOOK_FLAG_MASK: GHookFlagMask = 15;
821 
822 pub type GIOCondition = c_uint;
823 pub const G_IO_IN: GIOCondition = 1;
824 pub const G_IO_OUT: GIOCondition = 4;
825 pub const G_IO_PRI: GIOCondition = 2;
826 pub const G_IO_ERR: GIOCondition = 8;
827 pub const G_IO_HUP: GIOCondition = 16;
828 pub const G_IO_NVAL: GIOCondition = 32;
829 
830 pub type GIOFlags = c_uint;
831 pub const G_IO_FLAG_APPEND: GIOFlags = 1;
832 pub const G_IO_FLAG_NONBLOCK: GIOFlags = 2;
833 pub const G_IO_FLAG_IS_READABLE: GIOFlags = 4;
834 pub const G_IO_FLAG_IS_WRITABLE: GIOFlags = 8;
835 pub const G_IO_FLAG_IS_WRITEABLE: GIOFlags = 8;
836 pub const G_IO_FLAG_IS_SEEKABLE: GIOFlags = 16;
837 pub const G_IO_FLAG_MASK: GIOFlags = 31;
838 pub const G_IO_FLAG_GET_MASK: GIOFlags = 31;
839 pub const G_IO_FLAG_SET_MASK: GIOFlags = 3;
840 
841 pub type GKeyFileFlags = c_uint;
842 pub const G_KEY_FILE_NONE: GKeyFileFlags = 0;
843 pub const G_KEY_FILE_KEEP_COMMENTS: GKeyFileFlags = 1;
844 pub const G_KEY_FILE_KEEP_TRANSLATIONS: GKeyFileFlags = 2;
845 
846 pub type GLogLevelFlags = c_uint;
847 pub const G_LOG_FLAG_RECURSION: GLogLevelFlags = 1;
848 pub const G_LOG_FLAG_FATAL: GLogLevelFlags = 2;
849 pub const G_LOG_LEVEL_ERROR: GLogLevelFlags = 4;
850 pub const G_LOG_LEVEL_CRITICAL: GLogLevelFlags = 8;
851 pub const G_LOG_LEVEL_WARNING: GLogLevelFlags = 16;
852 pub const G_LOG_LEVEL_MESSAGE: GLogLevelFlags = 32;
853 pub const G_LOG_LEVEL_INFO: GLogLevelFlags = 64;
854 pub const G_LOG_LEVEL_DEBUG: GLogLevelFlags = 128;
855 pub const G_LOG_LEVEL_MASK: GLogLevelFlags = 4294967292;
856 
857 pub type GMarkupCollectType = c_uint;
858 pub const G_MARKUP_COLLECT_INVALID: GMarkupCollectType = 0;
859 pub const G_MARKUP_COLLECT_STRING: GMarkupCollectType = 1;
860 pub const G_MARKUP_COLLECT_STRDUP: GMarkupCollectType = 2;
861 pub const G_MARKUP_COLLECT_BOOLEAN: GMarkupCollectType = 3;
862 pub const G_MARKUP_COLLECT_TRISTATE: GMarkupCollectType = 4;
863 pub const G_MARKUP_COLLECT_OPTIONAL: GMarkupCollectType = 65536;
864 
865 pub type GMarkupParseFlags = c_uint;
866 pub const G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG: GMarkupParseFlags = 1;
867 pub const G_MARKUP_TREAT_CDATA_AS_TEXT: GMarkupParseFlags = 2;
868 pub const G_MARKUP_PREFIX_ERROR_POSITION: GMarkupParseFlags = 4;
869 pub const G_MARKUP_IGNORE_QUALIFIED: GMarkupParseFlags = 8;
870 
871 pub type GOptionFlags = c_uint;
872 pub const G_OPTION_FLAG_NONE: GOptionFlags = 0;
873 pub const G_OPTION_FLAG_HIDDEN: GOptionFlags = 1;
874 pub const G_OPTION_FLAG_IN_MAIN: GOptionFlags = 2;
875 pub const G_OPTION_FLAG_REVERSE: GOptionFlags = 4;
876 pub const G_OPTION_FLAG_NO_ARG: GOptionFlags = 8;
877 pub const G_OPTION_FLAG_FILENAME: GOptionFlags = 16;
878 pub const G_OPTION_FLAG_OPTIONAL_ARG: GOptionFlags = 32;
879 pub const G_OPTION_FLAG_NOALIAS: GOptionFlags = 64;
880 
881 pub type GRegexCompileFlags = c_uint;
882 pub const G_REGEX_CASELESS: GRegexCompileFlags = 1;
883 pub const G_REGEX_MULTILINE: GRegexCompileFlags = 2;
884 pub const G_REGEX_DOTALL: GRegexCompileFlags = 4;
885 pub const G_REGEX_EXTENDED: GRegexCompileFlags = 8;
886 pub const G_REGEX_ANCHORED: GRegexCompileFlags = 16;
887 pub const G_REGEX_DOLLAR_ENDONLY: GRegexCompileFlags = 32;
888 pub const G_REGEX_UNGREEDY: GRegexCompileFlags = 512;
889 pub const G_REGEX_RAW: GRegexCompileFlags = 2048;
890 pub const G_REGEX_NO_AUTO_CAPTURE: GRegexCompileFlags = 4096;
891 pub const G_REGEX_OPTIMIZE: GRegexCompileFlags = 8192;
892 pub const G_REGEX_FIRSTLINE: GRegexCompileFlags = 262144;
893 pub const G_REGEX_DUPNAMES: GRegexCompileFlags = 524288;
894 pub const G_REGEX_NEWLINE_CR: GRegexCompileFlags = 1048576;
895 pub const G_REGEX_NEWLINE_LF: GRegexCompileFlags = 2097152;
896 pub const G_REGEX_NEWLINE_CRLF: GRegexCompileFlags = 3145728;
897 pub const G_REGEX_NEWLINE_ANYCRLF: GRegexCompileFlags = 5242880;
898 pub const G_REGEX_BSR_ANYCRLF: GRegexCompileFlags = 8388608;
899 pub const G_REGEX_JAVASCRIPT_COMPAT: GRegexCompileFlags = 33554432;
900 
901 pub type GRegexMatchFlags = c_uint;
902 pub const G_REGEX_MATCH_ANCHORED: GRegexMatchFlags = 16;
903 pub const G_REGEX_MATCH_NOTBOL: GRegexMatchFlags = 128;
904 pub const G_REGEX_MATCH_NOTEOL: GRegexMatchFlags = 256;
905 pub const G_REGEX_MATCH_NOTEMPTY: GRegexMatchFlags = 1024;
906 pub const G_REGEX_MATCH_PARTIAL: GRegexMatchFlags = 32768;
907 pub const G_REGEX_MATCH_NEWLINE_CR: GRegexMatchFlags = 1048576;
908 pub const G_REGEX_MATCH_NEWLINE_LF: GRegexMatchFlags = 2097152;
909 pub const G_REGEX_MATCH_NEWLINE_CRLF: GRegexMatchFlags = 3145728;
910 pub const G_REGEX_MATCH_NEWLINE_ANY: GRegexMatchFlags = 4194304;
911 pub const G_REGEX_MATCH_NEWLINE_ANYCRLF: GRegexMatchFlags = 5242880;
912 pub const G_REGEX_MATCH_BSR_ANYCRLF: GRegexMatchFlags = 8388608;
913 pub const G_REGEX_MATCH_BSR_ANY: GRegexMatchFlags = 16777216;
914 pub const G_REGEX_MATCH_PARTIAL_SOFT: GRegexMatchFlags = 32768;
915 pub const G_REGEX_MATCH_PARTIAL_HARD: GRegexMatchFlags = 134217728;
916 pub const G_REGEX_MATCH_NOTEMPTY_ATSTART: GRegexMatchFlags = 268435456;
917 
918 pub type GSpawnFlags = c_uint;
919 pub const G_SPAWN_DEFAULT: GSpawnFlags = 0;
920 pub const G_SPAWN_LEAVE_DESCRIPTORS_OPEN: GSpawnFlags = 1;
921 pub const G_SPAWN_DO_NOT_REAP_CHILD: GSpawnFlags = 2;
922 pub const G_SPAWN_SEARCH_PATH: GSpawnFlags = 4;
923 pub const G_SPAWN_STDOUT_TO_DEV_NULL: GSpawnFlags = 8;
924 pub const G_SPAWN_STDERR_TO_DEV_NULL: GSpawnFlags = 16;
925 pub const G_SPAWN_CHILD_INHERITS_STDIN: GSpawnFlags = 32;
926 pub const G_SPAWN_FILE_AND_ARGV_ZERO: GSpawnFlags = 64;
927 pub const G_SPAWN_SEARCH_PATH_FROM_ENVP: GSpawnFlags = 128;
928 pub const G_SPAWN_CLOEXEC_PIPES: GSpawnFlags = 256;
929 
930 pub type GTestSubprocessFlags = c_uint;
931 pub const G_TEST_SUBPROCESS_INHERIT_STDIN: GTestSubprocessFlags = 1;
932 pub const G_TEST_SUBPROCESS_INHERIT_STDOUT: GTestSubprocessFlags = 2;
933 pub const G_TEST_SUBPROCESS_INHERIT_STDERR: GTestSubprocessFlags = 4;
934 
935 pub type GTestTrapFlags = c_uint;
936 pub const G_TEST_TRAP_SILENCE_STDOUT: GTestTrapFlags = 128;
937 pub const G_TEST_TRAP_SILENCE_STDERR: GTestTrapFlags = 256;
938 pub const G_TEST_TRAP_INHERIT_STDIN: GTestTrapFlags = 512;
939 
940 pub type GTraverseFlags = c_uint;
941 pub const G_TRAVERSE_LEAVES: GTraverseFlags = 1;
942 pub const G_TRAVERSE_NON_LEAVES: GTraverseFlags = 2;
943 pub const G_TRAVERSE_ALL: GTraverseFlags = 3;
944 pub const G_TRAVERSE_MASK: GTraverseFlags = 3;
945 pub const G_TRAVERSE_LEAFS: GTraverseFlags = 1;
946 pub const G_TRAVERSE_NON_LEAFS: GTraverseFlags = 2;
947 
948 pub type GUriFlags = c_uint;
949 pub const G_URI_FLAGS_NONE: GUriFlags = 0;
950 pub const G_URI_FLAGS_PARSE_RELAXED: GUriFlags = 1;
951 pub const G_URI_FLAGS_HAS_PASSWORD: GUriFlags = 2;
952 pub const G_URI_FLAGS_HAS_AUTH_PARAMS: GUriFlags = 4;
953 pub const G_URI_FLAGS_ENCODED: GUriFlags = 8;
954 pub const G_URI_FLAGS_NON_DNS: GUriFlags = 16;
955 pub const G_URI_FLAGS_ENCODED_QUERY: GUriFlags = 32;
956 pub const G_URI_FLAGS_ENCODED_PATH: GUriFlags = 64;
957 pub const G_URI_FLAGS_ENCODED_FRAGMENT: GUriFlags = 128;
958 
959 pub type GUriHideFlags = c_uint;
960 pub const G_URI_HIDE_NONE: GUriHideFlags = 0;
961 pub const G_URI_HIDE_USERINFO: GUriHideFlags = 1;
962 pub const G_URI_HIDE_PASSWORD: GUriHideFlags = 2;
963 pub const G_URI_HIDE_AUTH_PARAMS: GUriHideFlags = 4;
964 pub const G_URI_HIDE_QUERY: GUriHideFlags = 8;
965 pub const G_URI_HIDE_FRAGMENT: GUriHideFlags = 16;
966 
967 pub type GUriParamsFlags = c_uint;
968 pub const G_URI_PARAMS_NONE: GUriParamsFlags = 0;
969 pub const G_URI_PARAMS_CASE_INSENSITIVE: GUriParamsFlags = 1;
970 pub const G_URI_PARAMS_WWW_FORM: GUriParamsFlags = 2;
971 pub const G_URI_PARAMS_PARSE_RELAXED: GUriParamsFlags = 4;
972 
973 // Unions
974 #[repr(C)]
975 pub struct GDoubleIEEE754(c_void);
976 
977 impl ::std::fmt::Debug for GDoubleIEEE754 {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result978     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
979         f.debug_struct(&format!("GDoubleIEEE754 @ {:p}", self))
980             .finish()
981     }
982 }
983 
984 #[repr(C)]
985 pub struct GFloatIEEE754(c_void);
986 
987 impl ::std::fmt::Debug for GFloatIEEE754 {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result988     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
989         f.debug_struct(&format!("GFloatIEEE754 @ {:p}", self))
990             .finish()
991     }
992 }
993 
994 #[repr(C)]
995 #[derive(Copy, Clone)]
996 pub union GMutex {
997     pub p: gpointer,
998     pub i: [c_uint; 2],
999 }
1000 
1001 impl ::std::fmt::Debug for GMutex {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1002     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1003         f.debug_struct(&format!("GMutex @ {:p}", self)).finish()
1004     }
1005 }
1006 
1007 #[repr(C)]
1008 #[derive(Copy, Clone)]
1009 pub union GTokenValue {
1010     pub v_symbol: gpointer,
1011     pub v_identifier: *mut c_char,
1012     pub v_binary: c_ulong,
1013     pub v_octal: c_ulong,
1014     pub v_int: c_ulong,
1015     pub v_int64: u64,
1016     pub v_float: c_double,
1017     pub v_hex: c_ulong,
1018     pub v_string: *mut c_char,
1019     pub v_comment: *mut c_char,
1020     pub v_char: c_uchar,
1021     pub v_error: c_uint,
1022 }
1023 
1024 impl ::std::fmt::Debug for GTokenValue {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1025     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1026         f.debug_struct(&format!("GTokenValue @ {:p}", self))
1027             .field("v_symbol", unsafe { &self.v_symbol })
1028             .field("v_identifier", unsafe { &self.v_identifier })
1029             .field("v_binary", unsafe { &self.v_binary })
1030             .field("v_octal", unsafe { &self.v_octal })
1031             .field("v_int", unsafe { &self.v_int })
1032             .field("v_int64", unsafe { &self.v_int64 })
1033             .field("v_float", unsafe { &self.v_float })
1034             .field("v_hex", unsafe { &self.v_hex })
1035             .field("v_string", unsafe { &self.v_string })
1036             .field("v_comment", unsafe { &self.v_comment })
1037             .field("v_char", unsafe { &self.v_char })
1038             .field("v_error", unsafe { &self.v_error })
1039             .finish()
1040     }
1041 }
1042 
1043 #[repr(C)]
1044 #[derive(Copy, Clone)]
1045 pub union GVariantBuilder_u {
1046     pub s: GVariantBuilder_u_s,
1047     pub x: [size_t; 16],
1048 }
1049 
1050 impl ::std::fmt::Debug for GVariantBuilder_u {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1051     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1052         f.debug_struct(&format!("GVariantBuilder_u @ {:p}", self))
1053             .field("s", unsafe { &self.s })
1054             .field("x", unsafe { &self.x })
1055             .finish()
1056     }
1057 }
1058 
1059 #[repr(C)]
1060 #[derive(Copy, Clone)]
1061 pub union GVariantDict_u {
1062     pub s: GVariantDict_u_s,
1063     pub x: [size_t; 16],
1064 }
1065 
1066 impl ::std::fmt::Debug for GVariantDict_u {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1067     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1068         f.debug_struct(&format!("GVariantDict_u @ {:p}", self))
1069             .field("s", unsafe { &self.s })
1070             .field("x", unsafe { &self.x })
1071             .finish()
1072     }
1073 }
1074 
1075 // Callbacks
1076 pub type GChildWatchFunc = Option<unsafe extern "C" fn(GPid, c_int, gpointer)>;
1077 pub type GClearHandleFunc = Option<unsafe extern "C" fn(c_uint)>;
1078 pub type GCompareDataFunc =
1079     Option<unsafe extern "C" fn(gconstpointer, gconstpointer, gpointer) -> c_int>;
1080 pub type GCompareFunc = Option<unsafe extern "C" fn(gconstpointer, gconstpointer) -> c_int>;
1081 pub type GCopyFunc = Option<unsafe extern "C" fn(gconstpointer, gpointer) -> gpointer>;
1082 pub type GDataForeachFunc = Option<unsafe extern "C" fn(GQuark, gpointer, gpointer)>;
1083 pub type GDestroyNotify = Option<unsafe extern "C" fn(gpointer)>;
1084 pub type GDuplicateFunc = Option<unsafe extern "C" fn(gpointer, gpointer) -> gpointer>;
1085 pub type GEqualFunc = Option<unsafe extern "C" fn(gconstpointer, gconstpointer) -> gboolean>;
1086 pub type GFreeFunc = Option<unsafe extern "C" fn(gpointer)>;
1087 pub type GFunc = Option<unsafe extern "C" fn(gpointer, gpointer)>;
1088 pub type GHFunc = Option<unsafe extern "C" fn(gpointer, gpointer, gpointer)>;
1089 pub type GHRFunc = Option<unsafe extern "C" fn(gpointer, gpointer, gpointer) -> gboolean>;
1090 pub type GHashFunc = Option<unsafe extern "C" fn(gconstpointer) -> c_uint>;
1091 pub type GHookCheckFunc = Option<unsafe extern "C" fn(gpointer) -> gboolean>;
1092 pub type GHookCheckMarshaller = Option<unsafe extern "C" fn(*mut GHook, gpointer) -> gboolean>;
1093 pub type GHookCompareFunc = Option<unsafe extern "C" fn(*mut GHook, *mut GHook) -> c_int>;
1094 pub type GHookFinalizeFunc = Option<unsafe extern "C" fn(*mut GHookList, *mut GHook)>;
1095 pub type GHookFindFunc = Option<unsafe extern "C" fn(*mut GHook, gpointer) -> gboolean>;
1096 pub type GHookFunc = Option<unsafe extern "C" fn(gpointer)>;
1097 pub type GHookMarshaller = Option<unsafe extern "C" fn(*mut GHook, gpointer)>;
1098 pub type GIOFunc =
1099     Option<unsafe extern "C" fn(*mut GIOChannel, GIOCondition, gpointer) -> gboolean>;
1100 pub type GLogFunc =
1101     Option<unsafe extern "C" fn(*const c_char, GLogLevelFlags, *const c_char, gpointer)>;
1102 pub type GLogWriterFunc = Option<
1103     unsafe extern "C" fn(GLogLevelFlags, *const GLogField, size_t, gpointer) -> GLogWriterOutput,
1104 >;
1105 pub type GNodeForeachFunc = Option<unsafe extern "C" fn(*mut GNode, gpointer)>;
1106 pub type GNodeTraverseFunc = Option<unsafe extern "C" fn(*mut GNode, gpointer) -> gboolean>;
1107 pub type GOptionArgFunc = Option<
1108     unsafe extern "C" fn(*const c_char, *const c_char, gpointer, *mut *mut GError) -> gboolean,
1109 >;
1110 pub type GOptionErrorFunc = Option<
1111     unsafe extern "C" fn(*mut GOptionContext, *mut GOptionGroup, gpointer, *mut *mut GError),
1112 >;
1113 pub type GOptionParseFunc = Option<
1114     unsafe extern "C" fn(
1115         *mut GOptionContext,
1116         *mut GOptionGroup,
1117         gpointer,
1118         *mut *mut GError,
1119     ) -> gboolean,
1120 >;
1121 pub type GPollFunc = Option<unsafe extern "C" fn(*mut GPollFD, c_uint, c_int) -> c_int>;
1122 pub type GPrintFunc = Option<unsafe extern "C" fn(*const c_char)>;
1123 pub type GRegexEvalCallback =
1124     Option<unsafe extern "C" fn(*const GMatchInfo, *mut GString, gpointer) -> gboolean>;
1125 pub type GScannerMsgFunc = Option<unsafe extern "C" fn(*mut GScanner, *mut c_char, gboolean)>;
1126 pub type GSequenceIterCompareFunc =
1127     Option<unsafe extern "C" fn(*mut GSequenceIter, *mut GSequenceIter, gpointer) -> c_int>;
1128 pub type GSourceDisposeFunc = Option<unsafe extern "C" fn(*mut GSource)>;
1129 pub type GSourceDummyMarshal = Option<unsafe extern "C" fn()>;
1130 pub type GSourceFunc = Option<unsafe extern "C" fn(gpointer) -> gboolean>;
1131 pub type GSpawnChildSetupFunc = Option<unsafe extern "C" fn(gpointer)>;
1132 pub type GTestDataFunc = Option<unsafe extern "C" fn(gconstpointer)>;
1133 pub type GTestFixtureFunc = Option<unsafe extern "C" fn(gpointer, gconstpointer)>;
1134 pub type GTestFunc = Option<unsafe extern "C" fn()>;
1135 pub type GTestLogFatalFunc = Option<
1136     unsafe extern "C" fn(*const c_char, GLogLevelFlags, *const c_char, gpointer) -> gboolean,
1137 >;
1138 pub type GThreadFunc = Option<unsafe extern "C" fn(gpointer) -> gpointer>;
1139 pub type GTranslateFunc = Option<unsafe extern "C" fn(*const c_char, gpointer) -> *const c_char>;
1140 pub type GTraverseFunc = Option<unsafe extern "C" fn(gpointer, gpointer, gpointer) -> gboolean>;
1141 pub type GUnixFDSourceFunc =
1142     Option<unsafe extern "C" fn(c_int, GIOCondition, gpointer) -> gboolean>;
1143 pub type GVoidFunc = Option<unsafe extern "C" fn()>;
1144 
1145 // Records
1146 #[repr(C)]
1147 #[derive(Copy, Clone)]
1148 pub struct GArray {
1149     pub data: *mut c_char,
1150     pub len: c_uint,
1151 }
1152 
1153 impl ::std::fmt::Debug for GArray {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1154     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1155         f.debug_struct(&format!("GArray @ {:p}", self))
1156             .field("data", &self.data)
1157             .field("len", &self.len)
1158             .finish()
1159     }
1160 }
1161 
1162 #[repr(C)]
1163 pub struct _GAsyncQueue(c_void);
1164 
1165 pub type GAsyncQueue = *mut _GAsyncQueue;
1166 
1167 #[repr(C)]
1168 pub struct _GBookmarkFile(c_void);
1169 
1170 pub type GBookmarkFile = *mut _GBookmarkFile;
1171 
1172 #[repr(C)]
1173 #[derive(Copy, Clone)]
1174 pub struct GByteArray {
1175     pub data: *mut u8,
1176     pub len: c_uint,
1177 }
1178 
1179 impl ::std::fmt::Debug for GByteArray {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1180     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1181         f.debug_struct(&format!("GByteArray @ {:p}", self))
1182             .field("data", &self.data)
1183             .field("len", &self.len)
1184             .finish()
1185     }
1186 }
1187 
1188 #[repr(C)]
1189 pub struct GBytes(c_void);
1190 
1191 impl ::std::fmt::Debug for GBytes {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1192     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1193         f.debug_struct(&format!("GBytes @ {:p}", self)).finish()
1194     }
1195 }
1196 
1197 #[repr(C)]
1198 pub struct GChecksum(c_void);
1199 
1200 impl ::std::fmt::Debug for GChecksum {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1201     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1202         f.debug_struct(&format!("GChecksum @ {:p}", self)).finish()
1203     }
1204 }
1205 
1206 #[repr(C)]
1207 #[derive(Copy, Clone)]
1208 pub struct GCond {
1209     pub p: gpointer,
1210     pub i: [c_uint; 2],
1211 }
1212 
1213 impl ::std::fmt::Debug for GCond {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1214     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1215         f.debug_struct(&format!("GCond @ {:p}", self)).finish()
1216     }
1217 }
1218 
1219 #[repr(C)]
1220 pub struct _GData(c_void);
1221 
1222 pub type GData = *mut _GData;
1223 
1224 #[repr(C)]
1225 pub struct GDate {
1226     pub julian_days: c_uint,
1227     _truncated_record_marker: c_void,
1228     // field julian has incomplete type
1229 }
1230 
1231 impl ::std::fmt::Debug for GDate {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1232     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1233         f.debug_struct(&format!("GDate @ {:p}", self))
1234             .field("julian_days", &self.julian_days)
1235             .finish()
1236     }
1237 }
1238 
1239 #[repr(C)]
1240 pub struct GDateTime(c_void);
1241 
1242 impl ::std::fmt::Debug for GDateTime {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1243     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1244         f.debug_struct(&format!("GDateTime @ {:p}", self)).finish()
1245     }
1246 }
1247 
1248 #[repr(C)]
1249 #[derive(Copy, Clone)]
1250 pub struct GDebugKey {
1251     pub key: *const c_char,
1252     pub value: c_uint,
1253 }
1254 
1255 impl ::std::fmt::Debug for GDebugKey {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1256     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1257         f.debug_struct(&format!("GDebugKey @ {:p}", self))
1258             .field("key", &self.key)
1259             .field("value", &self.value)
1260             .finish()
1261     }
1262 }
1263 
1264 #[repr(C)]
1265 pub struct _GDir(c_void);
1266 
1267 pub type GDir = *mut _GDir;
1268 
1269 #[repr(C)]
1270 pub struct GDoubleIEEE754_mpn {
1271     pub mantissa_low: c_uint,
1272     _truncated_record_marker: c_void,
1273     // field mantissa_high has incomplete type
1274 }
1275 
1276 impl ::std::fmt::Debug for GDoubleIEEE754_mpn {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1277     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1278         f.debug_struct(&format!("GDoubleIEEE754_mpn @ {:p}", self))
1279             .field("mantissa_low", &self.mantissa_low)
1280             .finish()
1281     }
1282 }
1283 
1284 #[repr(C)]
1285 #[derive(Copy, Clone)]
1286 pub struct GError {
1287     pub domain: GQuark,
1288     pub code: c_int,
1289     pub message: *mut c_char,
1290 }
1291 
1292 impl ::std::fmt::Debug for GError {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1293     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1294         f.debug_struct(&format!("GError @ {:p}", self))
1295             .field("domain", &self.domain)
1296             .field("code", &self.code)
1297             .field("message", &self.message)
1298             .finish()
1299     }
1300 }
1301 
1302 #[repr(C)]
1303 pub struct GFloatIEEE754_mpn {
1304     pub mantissa: c_uint,
1305     _truncated_record_marker: c_void,
1306     // field biased_exponent has incomplete type
1307 }
1308 
1309 impl ::std::fmt::Debug for GFloatIEEE754_mpn {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1310     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1311         f.debug_struct(&format!("GFloatIEEE754_mpn @ {:p}", self))
1312             .field("mantissa", &self.mantissa)
1313             .finish()
1314     }
1315 }
1316 
1317 #[repr(C)]
1318 pub struct GHashTable(c_void);
1319 
1320 impl ::std::fmt::Debug for GHashTable {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1321     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1322         f.debug_struct(&format!("GHashTable @ {:p}", self)).finish()
1323     }
1324 }
1325 
1326 #[repr(C)]
1327 #[derive(Copy, Clone)]
1328 pub struct GHashTableIter {
1329     pub dummy1: gpointer,
1330     pub dummy2: gpointer,
1331     pub dummy3: gpointer,
1332     pub dummy4: c_int,
1333     pub dummy5: gboolean,
1334     pub dummy6: gpointer,
1335 }
1336 
1337 impl ::std::fmt::Debug for GHashTableIter {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1338     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1339         f.debug_struct(&format!("GHashTableIter @ {:p}", self))
1340             .finish()
1341     }
1342 }
1343 
1344 #[repr(C)]
1345 pub struct _GHmac(c_void);
1346 
1347 pub type GHmac = *mut _GHmac;
1348 
1349 #[repr(C)]
1350 #[derive(Copy, Clone)]
1351 pub struct GHook {
1352     pub data: gpointer,
1353     pub next: *mut GHook,
1354     pub prev: *mut GHook,
1355     pub ref_count: c_uint,
1356     pub hook_id: c_ulong,
1357     pub flags: c_uint,
1358     pub func: gpointer,
1359     pub destroy: GDestroyNotify,
1360 }
1361 
1362 impl ::std::fmt::Debug for GHook {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1363     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1364         f.debug_struct(&format!("GHook @ {:p}", self))
1365             .field("data", &self.data)
1366             .field("next", &self.next)
1367             .field("prev", &self.prev)
1368             .field("ref_count", &self.ref_count)
1369             .field("hook_id", &self.hook_id)
1370             .field("flags", &self.flags)
1371             .field("func", &self.func)
1372             .field("destroy", &self.destroy)
1373             .finish()
1374     }
1375 }
1376 
1377 #[repr(C)]
1378 #[derive(Copy, Clone)]
1379 pub struct GHookList {
1380     pub seq_id: c_ulong,
1381     #[cfg(any(not(windows), not(target_pointer_width = "64")))]
1382     pub hook_size_and_setup: gpointer,
1383     #[cfg(all(windows, target_pointer_width = "64"))]
1384     pub hook_size_and_setup: c_ulong,
1385     pub hooks: *mut GHook,
1386     pub dummy3: gpointer,
1387     pub finalize_hook: GHookFinalizeFunc,
1388     pub dummy: [gpointer; 2],
1389 }
1390 
1391 impl ::std::fmt::Debug for GHookList {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1392     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1393         write!(f, "GHookList @ {:p}", self)
1394     }
1395 }
1396 
1397 #[repr(C)]
1398 pub struct _GIConv(c_void);
1399 
1400 pub type GIConv = *mut _GIConv;
1401 
1402 #[repr(C)]
1403 pub struct GIOChannel {
1404     pub ref_count: c_int,
1405     pub funcs: *mut GIOFuncs,
1406     pub encoding: *mut c_char,
1407     pub read_cd: GIConv,
1408     pub write_cd: GIConv,
1409     pub line_term: *mut c_char,
1410     pub line_term_len: c_uint,
1411     pub buf_size: size_t,
1412     pub read_buf: *mut GString,
1413     pub encoded_read_buf: *mut GString,
1414     pub write_buf: *mut GString,
1415     pub partial_write_buf: [c_char; 6],
1416     pub use_buffer: c_uint,
1417     _truncated_record_marker: c_void,
1418     // field do_encode has incomplete type
1419 }
1420 
1421 impl ::std::fmt::Debug for GIOChannel {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1422     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1423         f.debug_struct(&format!("GIOChannel @ {:p}", self)).finish()
1424     }
1425 }
1426 
1427 #[repr(C)]
1428 #[derive(Copy, Clone)]
1429 pub struct GIOFuncs {
1430     pub io_read: Option<
1431         unsafe extern "C" fn(
1432             *mut GIOChannel,
1433             *const c_char,
1434             size_t,
1435             *mut size_t,
1436             *mut *mut GError,
1437         ) -> GIOStatus,
1438     >,
1439     pub io_write: Option<
1440         unsafe extern "C" fn(
1441             *mut GIOChannel,
1442             *const c_char,
1443             size_t,
1444             *mut size_t,
1445             *mut *mut GError,
1446         ) -> GIOStatus,
1447     >,
1448     pub io_seek: Option<
1449         unsafe extern "C" fn(*mut GIOChannel, i64, GSeekType, *mut *mut GError) -> GIOStatus,
1450     >,
1451     pub io_close: Option<unsafe extern "C" fn(*mut GIOChannel, *mut *mut GError) -> GIOStatus>,
1452     pub io_create_watch:
1453         Option<unsafe extern "C" fn(*mut GIOChannel, GIOCondition) -> *mut GSource>,
1454     pub io_free: Option<unsafe extern "C" fn(*mut GIOChannel)>,
1455     pub io_set_flags:
1456         Option<unsafe extern "C" fn(*mut GIOChannel, GIOFlags, *mut *mut GError) -> GIOStatus>,
1457     pub io_get_flags: Option<unsafe extern "C" fn(*mut GIOChannel) -> GIOFlags>,
1458 }
1459 
1460 impl ::std::fmt::Debug for GIOFuncs {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1461     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1462         f.debug_struct(&format!("GIOFuncs @ {:p}", self))
1463             .field("io_read", &self.io_read)
1464             .field("io_write", &self.io_write)
1465             .field("io_seek", &self.io_seek)
1466             .field("io_close", &self.io_close)
1467             .field("io_create_watch", &self.io_create_watch)
1468             .field("io_free", &self.io_free)
1469             .field("io_set_flags", &self.io_set_flags)
1470             .field("io_get_flags", &self.io_get_flags)
1471             .finish()
1472     }
1473 }
1474 
1475 #[repr(C)]
1476 pub struct GKeyFile(c_void);
1477 
1478 impl ::std::fmt::Debug for GKeyFile {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1479     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1480         f.debug_struct(&format!("GKeyFile @ {:p}", self)).finish()
1481     }
1482 }
1483 
1484 #[repr(C)]
1485 #[derive(Copy, Clone)]
1486 pub struct GList {
1487     pub data: gpointer,
1488     pub next: *mut GList,
1489     pub prev: *mut GList,
1490 }
1491 
1492 impl ::std::fmt::Debug for GList {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1493     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1494         f.debug_struct(&format!("GList @ {:p}", self))
1495             .field("data", &self.data)
1496             .field("next", &self.next)
1497             .field("prev", &self.prev)
1498             .finish()
1499     }
1500 }
1501 
1502 #[repr(C)]
1503 #[derive(Copy, Clone)]
1504 pub struct GLogField {
1505     pub key: *const c_char,
1506     pub value: gconstpointer,
1507     pub length: ssize_t,
1508 }
1509 
1510 impl ::std::fmt::Debug for GLogField {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1511     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1512         f.debug_struct(&format!("GLogField @ {:p}", self))
1513             .field("key", &self.key)
1514             .field("value", &self.value)
1515             .field("length", &self.length)
1516             .finish()
1517     }
1518 }
1519 
1520 #[repr(C)]
1521 pub struct GMainContext(c_void);
1522 
1523 impl ::std::fmt::Debug for GMainContext {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1524     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1525         f.debug_struct(&format!("GMainContext @ {:p}", self))
1526             .finish()
1527     }
1528 }
1529 
1530 #[repr(C)]
1531 pub struct GMainLoop(c_void);
1532 
1533 impl ::std::fmt::Debug for GMainLoop {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1534     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1535         f.debug_struct(&format!("GMainLoop @ {:p}", self)).finish()
1536     }
1537 }
1538 
1539 #[repr(C)]
1540 pub struct GMappedFile(c_void);
1541 
1542 impl ::std::fmt::Debug for GMappedFile {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1543     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1544         f.debug_struct(&format!("GMappedFile @ {:p}", self))
1545             .finish()
1546     }
1547 }
1548 
1549 #[repr(C)]
1550 pub struct GMarkupParseContext(c_void);
1551 
1552 impl ::std::fmt::Debug for GMarkupParseContext {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1553     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1554         f.debug_struct(&format!("GMarkupParseContext @ {:p}", self))
1555             .finish()
1556     }
1557 }
1558 
1559 #[repr(C)]
1560 #[derive(Copy, Clone)]
1561 pub struct GMarkupParser {
1562     pub start_element: Option<
1563         unsafe extern "C" fn(
1564             *mut GMarkupParseContext,
1565             *const c_char,
1566             *mut *const c_char,
1567             *mut *const c_char,
1568             gpointer,
1569             *mut *mut GError,
1570         ),
1571     >,
1572     pub end_element: Option<
1573         unsafe extern "C" fn(*mut GMarkupParseContext, *const c_char, gpointer, *mut *mut GError),
1574     >,
1575     pub text: Option<
1576         unsafe extern "C" fn(
1577             *mut GMarkupParseContext,
1578             *const c_char,
1579             size_t,
1580             gpointer,
1581             *mut *mut GError,
1582         ),
1583     >,
1584     pub passthrough: Option<
1585         unsafe extern "C" fn(
1586             *mut GMarkupParseContext,
1587             *const c_char,
1588             size_t,
1589             gpointer,
1590             *mut *mut GError,
1591         ),
1592     >,
1593     pub error: Option<unsafe extern "C" fn(*mut GMarkupParseContext, *mut GError, gpointer)>,
1594 }
1595 
1596 impl ::std::fmt::Debug for GMarkupParser {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1597     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1598         f.debug_struct(&format!("GMarkupParser @ {:p}", self))
1599             .field("start_element", &self.start_element)
1600             .field("end_element", &self.end_element)
1601             .field("text", &self.text)
1602             .field("passthrough", &self.passthrough)
1603             .field("error", &self.error)
1604             .finish()
1605     }
1606 }
1607 
1608 #[repr(C)]
1609 pub struct GMatchInfo(c_void);
1610 
1611 impl ::std::fmt::Debug for GMatchInfo {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1612     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1613         f.debug_struct(&format!("GMatchInfo @ {:p}", self)).finish()
1614     }
1615 }
1616 
1617 #[repr(C)]
1618 #[derive(Copy, Clone)]
1619 pub struct GMemVTable {
1620     pub malloc: Option<unsafe extern "C" fn(size_t) -> gpointer>,
1621     pub realloc: Option<unsafe extern "C" fn(gpointer, size_t) -> gpointer>,
1622     pub free: Option<unsafe extern "C" fn(gpointer)>,
1623     pub calloc: Option<unsafe extern "C" fn(size_t, size_t) -> gpointer>,
1624     pub try_malloc: Option<unsafe extern "C" fn(size_t) -> gpointer>,
1625     pub try_realloc: Option<unsafe extern "C" fn(gpointer, size_t) -> gpointer>,
1626 }
1627 
1628 impl ::std::fmt::Debug for GMemVTable {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1629     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1630         f.debug_struct(&format!("GMemVTable @ {:p}", self))
1631             .field("malloc", &self.malloc)
1632             .field("realloc", &self.realloc)
1633             .field("free", &self.free)
1634             .field("calloc", &self.calloc)
1635             .field("try_malloc", &self.try_malloc)
1636             .field("try_realloc", &self.try_realloc)
1637             .finish()
1638     }
1639 }
1640 
1641 #[repr(C)]
1642 #[derive(Copy, Clone)]
1643 pub struct GNode {
1644     pub data: gpointer,
1645     pub next: *mut GNode,
1646     pub prev: *mut GNode,
1647     pub parent: *mut GNode,
1648     pub children: *mut GNode,
1649 }
1650 
1651 impl ::std::fmt::Debug for GNode {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1652     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1653         f.debug_struct(&format!("GNode @ {:p}", self))
1654             .field("data", &self.data)
1655             .field("next", &self.next)
1656             .field("prev", &self.prev)
1657             .field("parent", &self.parent)
1658             .field("children", &self.children)
1659             .finish()
1660     }
1661 }
1662 
1663 #[repr(C)]
1664 #[derive(Copy, Clone)]
1665 pub struct GOnce {
1666     pub status: GOnceStatus,
1667     pub retval: gpointer,
1668 }
1669 
1670 impl ::std::fmt::Debug for GOnce {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1671     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1672         f.debug_struct(&format!("GOnce @ {:p}", self)).finish()
1673     }
1674 }
1675 
1676 #[repr(C)]
1677 pub struct _GOptionContext(c_void);
1678 
1679 pub type GOptionContext = *mut _GOptionContext;
1680 
1681 #[repr(C)]
1682 #[derive(Copy, Clone)]
1683 pub struct GOptionEntry {
1684     pub long_name: *const c_char,
1685     pub short_name: c_char,
1686     pub flags: c_int,
1687     pub arg: GOptionArg,
1688     pub arg_data: gpointer,
1689     pub description: *const c_char,
1690     pub arg_description: *const c_char,
1691 }
1692 
1693 impl ::std::fmt::Debug for GOptionEntry {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1694     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1695         f.debug_struct(&format!("GOptionEntry @ {:p}", self))
1696             .field("long_name", &self.long_name)
1697             .field("short_name", &self.short_name)
1698             .field("flags", &self.flags)
1699             .field("arg", &self.arg)
1700             .field("arg_data", &self.arg_data)
1701             .field("description", &self.description)
1702             .field("arg_description", &self.arg_description)
1703             .finish()
1704     }
1705 }
1706 
1707 #[repr(C)]
1708 pub struct GOptionGroup(c_void);
1709 
1710 impl ::std::fmt::Debug for GOptionGroup {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1711     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1712         f.debug_struct(&format!("GOptionGroup @ {:p}", self))
1713             .finish()
1714     }
1715 }
1716 
1717 #[repr(C)]
1718 pub struct _GPatternSpec(c_void);
1719 
1720 pub type GPatternSpec = *mut _GPatternSpec;
1721 
1722 #[repr(C)]
1723 #[derive(Copy, Clone)]
1724 pub struct GPrivate {
1725     pub p: gpointer,
1726     pub notify: GDestroyNotify,
1727     pub future: [gpointer; 2],
1728 }
1729 
1730 impl ::std::fmt::Debug for GPrivate {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1731     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1732         f.debug_struct(&format!("GPrivate @ {:p}", self)).finish()
1733     }
1734 }
1735 
1736 #[repr(C)]
1737 #[derive(Copy, Clone)]
1738 pub struct GPtrArray {
1739     pub pdata: *mut gpointer,
1740     pub len: c_uint,
1741 }
1742 
1743 impl ::std::fmt::Debug for GPtrArray {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1744     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1745         f.debug_struct(&format!("GPtrArray @ {:p}", self))
1746             .field("pdata", &self.pdata)
1747             .field("len", &self.len)
1748             .finish()
1749     }
1750 }
1751 
1752 #[repr(C)]
1753 #[derive(Copy, Clone)]
1754 pub struct GQueue {
1755     pub head: *mut GList,
1756     pub tail: *mut GList,
1757     pub length: c_uint,
1758 }
1759 
1760 impl ::std::fmt::Debug for GQueue {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1761     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1762         f.debug_struct(&format!("GQueue @ {:p}", self))
1763             .field("head", &self.head)
1764             .field("tail", &self.tail)
1765             .field("length", &self.length)
1766             .finish()
1767     }
1768 }
1769 
1770 #[repr(C)]
1771 #[derive(Copy, Clone)]
1772 pub struct GRWLock {
1773     pub p: gpointer,
1774     pub i: [c_uint; 2],
1775 }
1776 
1777 impl ::std::fmt::Debug for GRWLock {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1778     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1779         f.debug_struct(&format!("GRWLock @ {:p}", self)).finish()
1780     }
1781 }
1782 
1783 #[repr(C)]
1784 pub struct _GRand(c_void);
1785 
1786 pub type GRand = *mut _GRand;
1787 
1788 #[repr(C)]
1789 #[derive(Copy, Clone)]
1790 pub struct GRecMutex {
1791     pub p: gpointer,
1792     pub i: [c_uint; 2],
1793 }
1794 
1795 impl ::std::fmt::Debug for GRecMutex {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1796     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1797         f.debug_struct(&format!("GRecMutex @ {:p}", self)).finish()
1798     }
1799 }
1800 
1801 #[repr(C)]
1802 pub struct GRegex(c_void);
1803 
1804 impl ::std::fmt::Debug for GRegex {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1805     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1806         f.debug_struct(&format!("GRegex @ {:p}", self)).finish()
1807     }
1808 }
1809 
1810 #[repr(C)]
1811 #[derive(Copy, Clone)]
1812 pub struct GSList {
1813     pub data: gpointer,
1814     pub next: *mut GSList,
1815 }
1816 
1817 impl ::std::fmt::Debug for GSList {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1818     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1819         f.debug_struct(&format!("GSList @ {:p}", self))
1820             .field("data", &self.data)
1821             .field("next", &self.next)
1822             .finish()
1823     }
1824 }
1825 
1826 #[repr(C)]
1827 #[derive(Copy, Clone)]
1828 pub struct GScanner {
1829     pub user_data: gpointer,
1830     pub max_parse_errors: c_uint,
1831     pub parse_errors: c_uint,
1832     pub input_name: *const c_char,
1833     pub qdata: *mut GData,
1834     pub config: *mut GScannerConfig,
1835     pub token: GTokenType,
1836     pub value: GTokenValue,
1837     pub line: c_uint,
1838     pub position: c_uint,
1839     pub next_token: GTokenType,
1840     pub next_value: GTokenValue,
1841     pub next_line: c_uint,
1842     pub next_position: c_uint,
1843     pub symbol_table: *mut GHashTable,
1844     pub input_fd: c_int,
1845     pub text: *const c_char,
1846     pub text_end: *const c_char,
1847     pub buffer: *mut c_char,
1848     pub scope_id: c_uint,
1849     pub msg_handler: GScannerMsgFunc,
1850 }
1851 
1852 impl ::std::fmt::Debug for GScanner {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1853     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1854         f.debug_struct(&format!("GScanner @ {:p}", self))
1855             .field("user_data", &self.user_data)
1856             .field("max_parse_errors", &self.max_parse_errors)
1857             .field("parse_errors", &self.parse_errors)
1858             .field("input_name", &self.input_name)
1859             .field("qdata", &self.qdata)
1860             .field("config", &self.config)
1861             .field("token", &self.token)
1862             .field("value", &self.value)
1863             .field("line", &self.line)
1864             .field("position", &self.position)
1865             .field("next_token", &self.next_token)
1866             .field("next_value", &self.next_value)
1867             .field("next_line", &self.next_line)
1868             .field("next_position", &self.next_position)
1869             .field("msg_handler", &self.msg_handler)
1870             .finish()
1871     }
1872 }
1873 
1874 #[repr(C)]
1875 pub struct GScannerConfig {
1876     pub cset_skip_characters: *mut c_char,
1877     pub cset_identifier_first: *mut c_char,
1878     pub cset_identifier_nth: *mut c_char,
1879     pub cpair_comment_single: *mut c_char,
1880     pub case_sensitive: c_uint,
1881     _truncated_record_marker: c_void,
1882     // field skip_comment_multi has incomplete type
1883 }
1884 
1885 impl ::std::fmt::Debug for GScannerConfig {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1886     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1887         f.debug_struct(&format!("GScannerConfig @ {:p}", self))
1888             .field("cset_skip_characters", &self.cset_skip_characters)
1889             .field("cset_identifier_first", &self.cset_identifier_first)
1890             .field("cset_identifier_nth", &self.cset_identifier_nth)
1891             .field("cpair_comment_single", &self.cpair_comment_single)
1892             .field("case_sensitive", &self.case_sensitive)
1893             .finish()
1894     }
1895 }
1896 
1897 #[repr(C)]
1898 pub struct _GSequence(c_void);
1899 
1900 pub type GSequence = *mut _GSequence;
1901 
1902 #[repr(C)]
1903 pub struct _GSequenceIter(c_void);
1904 
1905 pub type GSequenceIter = *mut _GSequenceIter;
1906 
1907 #[repr(C)]
1908 #[derive(Copy, Clone)]
1909 pub struct GSource {
1910     pub callback_data: gpointer,
1911     pub callback_funcs: *mut GSourceCallbackFuncs,
1912     pub source_funcs: *const GSourceFuncs,
1913     pub ref_count: c_uint,
1914     pub context: *mut GMainContext,
1915     pub priority: c_int,
1916     pub flags: c_uint,
1917     pub source_id: c_uint,
1918     pub poll_fds: *mut GSList,
1919     pub prev: *mut GSource,
1920     pub next: *mut GSource,
1921     pub name: *mut c_char,
1922     pub priv_: *mut GSourcePrivate,
1923 }
1924 
1925 impl ::std::fmt::Debug for GSource {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1926     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1927         f.debug_struct(&format!("GSource @ {:p}", self)).finish()
1928     }
1929 }
1930 
1931 #[repr(C)]
1932 #[derive(Copy, Clone)]
1933 pub struct GSourceCallbackFuncs {
1934     pub ref_: Option<unsafe extern "C" fn(gpointer)>,
1935     pub unref: Option<unsafe extern "C" fn(gpointer)>,
1936     pub get: Option<unsafe extern "C" fn(gpointer, *mut GSource, *mut GSourceFunc, *mut gpointer)>,
1937 }
1938 
1939 impl ::std::fmt::Debug for GSourceCallbackFuncs {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1940     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1941         f.debug_struct(&format!("GSourceCallbackFuncs @ {:p}", self))
1942             .field("ref_", &self.ref_)
1943             .field("unref", &self.unref)
1944             .field("get", &self.get)
1945             .finish()
1946     }
1947 }
1948 
1949 #[repr(C)]
1950 #[derive(Copy, Clone)]
1951 pub struct GSourceFuncs {
1952     pub prepare: Option<unsafe extern "C" fn(*mut GSource, *mut c_int) -> gboolean>,
1953     pub check: Option<unsafe extern "C" fn(*mut GSource) -> gboolean>,
1954     pub dispatch: Option<unsafe extern "C" fn(*mut GSource, GSourceFunc, gpointer) -> gboolean>,
1955     pub finalize: Option<unsafe extern "C" fn(*mut GSource)>,
1956     pub closure_callback: GSourceFunc,
1957     pub closure_marshal: GSourceDummyMarshal,
1958 }
1959 
1960 impl ::std::fmt::Debug for GSourceFuncs {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1961     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1962         f.debug_struct(&format!("GSourceFuncs @ {:p}", self))
1963             .field("prepare", &self.prepare)
1964             .field("check", &self.check)
1965             .field("dispatch", &self.dispatch)
1966             .field("finalize", &self.finalize)
1967             .finish()
1968     }
1969 }
1970 
1971 #[repr(C)]
1972 pub struct _GSourcePrivate(c_void);
1973 
1974 pub type GSourcePrivate = *mut _GSourcePrivate;
1975 
1976 #[repr(C)]
1977 pub struct _GStatBuf(c_void);
1978 
1979 pub type GStatBuf = *mut _GStatBuf;
1980 
1981 #[repr(C)]
1982 #[derive(Copy, Clone)]
1983 pub struct GString {
1984     pub str: *mut c_char,
1985     pub len: size_t,
1986     pub allocated_len: size_t,
1987 }
1988 
1989 impl ::std::fmt::Debug for GString {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1990     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1991         f.debug_struct(&format!("GString @ {:p}", self))
1992             .field("str", &self.str)
1993             .field("len", &self.len)
1994             .field("allocated_len", &self.allocated_len)
1995             .finish()
1996     }
1997 }
1998 
1999 #[repr(C)]
2000 pub struct _GStringChunk(c_void);
2001 
2002 pub type GStringChunk = *mut _GStringChunk;
2003 
2004 #[repr(C)]
2005 pub struct _GTestCase(c_void);
2006 
2007 pub type GTestCase = *mut _GTestCase;
2008 
2009 #[repr(C)]
2010 #[derive(Copy, Clone)]
2011 pub struct GTestConfig {
2012     pub test_initialized: gboolean,
2013     pub test_quick: gboolean,
2014     pub test_perf: gboolean,
2015     pub test_verbose: gboolean,
2016     pub test_quiet: gboolean,
2017     pub test_undefined: gboolean,
2018 }
2019 
2020 impl ::std::fmt::Debug for GTestConfig {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2021     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2022         f.debug_struct(&format!("GTestConfig @ {:p}", self))
2023             .field("test_initialized", &self.test_initialized)
2024             .field("test_quick", &self.test_quick)
2025             .field("test_perf", &self.test_perf)
2026             .field("test_verbose", &self.test_verbose)
2027             .field("test_quiet", &self.test_quiet)
2028             .field("test_undefined", &self.test_undefined)
2029             .finish()
2030     }
2031 }
2032 
2033 #[repr(C)]
2034 #[derive(Copy, Clone)]
2035 pub struct GTestLogBuffer {
2036     pub data: *mut GString,
2037     pub msgs: *mut GSList,
2038 }
2039 
2040 impl ::std::fmt::Debug for GTestLogBuffer {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2041     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2042         f.debug_struct(&format!("GTestLogBuffer @ {:p}", self))
2043             .finish()
2044     }
2045 }
2046 
2047 #[repr(C)]
2048 pub struct GTestLogMsg {
2049     pub log_type: GTestLogType,
2050     pub n_strings: c_uint,
2051     pub strings: *mut *mut c_char,
2052     pub n_nums: c_uint,
2053     _truncated_record_marker: c_void,
2054     // /*Unimplemented*/*mut long double
2055 }
2056 
2057 impl ::std::fmt::Debug for GTestLogMsg {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2058     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2059         f.debug_struct(&format!("GTestLogMsg @ {:p}", self))
2060             .field("log_type", &self.log_type)
2061             .field("n_strings", &self.n_strings)
2062             .field("strings", &self.strings)
2063             .field("n_nums", &self.n_nums)
2064             .finish()
2065     }
2066 }
2067 
2068 #[repr(C)]
2069 pub struct _GTestSuite(c_void);
2070 
2071 pub type GTestSuite = *mut _GTestSuite;
2072 
2073 #[repr(C)]
2074 pub struct GThread(c_void);
2075 
2076 impl ::std::fmt::Debug for GThread {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2077     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2078         f.debug_struct(&format!("GThread @ {:p}", self)).finish()
2079     }
2080 }
2081 
2082 #[repr(C)]
2083 #[derive(Copy, Clone)]
2084 pub struct GThreadPool {
2085     pub func: GFunc,
2086     pub user_data: gpointer,
2087     pub exclusive: gboolean,
2088 }
2089 
2090 impl ::std::fmt::Debug for GThreadPool {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2091     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2092         f.debug_struct(&format!("GThreadPool @ {:p}", self))
2093             .field("func", &self.func)
2094             .field("user_data", &self.user_data)
2095             .field("exclusive", &self.exclusive)
2096             .finish()
2097     }
2098 }
2099 
2100 #[repr(C)]
2101 #[derive(Copy, Clone)]
2102 pub struct GTimeVal {
2103     pub tv_sec: c_long,
2104     pub tv_usec: c_long,
2105 }
2106 
2107 impl ::std::fmt::Debug for GTimeVal {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2108     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2109         f.debug_struct(&format!("GTimeVal @ {:p}", self))
2110             .field("tv_sec", &self.tv_sec)
2111             .field("tv_usec", &self.tv_usec)
2112             .finish()
2113     }
2114 }
2115 
2116 #[repr(C)]
2117 pub struct GTimeZone(c_void);
2118 
2119 impl ::std::fmt::Debug for GTimeZone {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2120     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2121         f.debug_struct(&format!("GTimeZone @ {:p}", self)).finish()
2122     }
2123 }
2124 
2125 #[repr(C)]
2126 pub struct _GTimer(c_void);
2127 
2128 pub type GTimer = *mut _GTimer;
2129 
2130 #[repr(C)]
2131 #[derive(Copy, Clone)]
2132 pub struct GTrashStack {
2133     pub next: *mut GTrashStack,
2134 }
2135 
2136 impl ::std::fmt::Debug for GTrashStack {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2137     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2138         f.debug_struct(&format!("GTrashStack @ {:p}", self))
2139             .field("next", &self.next)
2140             .finish()
2141     }
2142 }
2143 
2144 #[repr(C)]
2145 pub struct _GTree(c_void);
2146 
2147 pub type GTree = *mut _GTree;
2148 
2149 #[repr(C)]
2150 pub struct GUri(c_void);
2151 
2152 impl ::std::fmt::Debug for GUri {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2153     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2154         f.debug_struct(&format!("GUri @ {:p}", self)).finish()
2155     }
2156 }
2157 
2158 #[repr(C)]
2159 #[derive(Copy, Clone)]
2160 pub struct GUriParamsIter {
2161     pub dummy0: c_int,
2162     pub dummy1: gpointer,
2163     pub dummy2: gpointer,
2164     pub dummy3: [u8; 256],
2165 }
2166 
2167 impl ::std::fmt::Debug for GUriParamsIter {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2168     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2169         f.debug_struct(&format!("GUriParamsIter @ {:p}", self))
2170             .finish()
2171     }
2172 }
2173 
2174 #[repr(C)]
2175 pub struct GVariant(c_void);
2176 
2177 impl ::std::fmt::Debug for GVariant {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2178     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2179         f.debug_struct(&format!("GVariant @ {:p}", self)).finish()
2180     }
2181 }
2182 
2183 #[repr(C)]
2184 #[derive(Copy, Clone)]
2185 pub struct GVariantBuilder {
2186     pub u: GVariantBuilder_u,
2187 }
2188 
2189 impl ::std::fmt::Debug for GVariantBuilder {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2190     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2191         f.debug_struct(&format!("GVariantBuilder @ {:p}", self))
2192             .field("u", &self.u)
2193             .finish()
2194     }
2195 }
2196 
2197 #[repr(C)]
2198 #[derive(Copy, Clone)]
2199 pub struct GVariantBuilder_u_s {
2200     pub partial_magic: size_t,
2201     pub type_: *const GVariantType,
2202     pub y: [size_t; 14],
2203 }
2204 
2205 impl ::std::fmt::Debug for GVariantBuilder_u_s {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2206     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2207         f.debug_struct(&format!("GVariantBuilder_u_s @ {:p}", self))
2208             .field("partial_magic", &self.partial_magic)
2209             .field("type_", &self.type_)
2210             .field("y", &self.y)
2211             .finish()
2212     }
2213 }
2214 
2215 #[repr(C)]
2216 #[derive(Copy, Clone)]
2217 pub struct GVariantDict {
2218     pub u: GVariantDict_u,
2219 }
2220 
2221 impl ::std::fmt::Debug for GVariantDict {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2222     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2223         f.debug_struct(&format!("GVariantDict @ {:p}", self))
2224             .field("u", &self.u)
2225             .finish()
2226     }
2227 }
2228 
2229 #[repr(C)]
2230 #[derive(Copy, Clone)]
2231 pub struct GVariantDict_u_s {
2232     pub asv: *mut GVariant,
2233     pub partial_magic: size_t,
2234     pub y: [size_t; 14],
2235 }
2236 
2237 impl ::std::fmt::Debug for GVariantDict_u_s {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2238     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2239         f.debug_struct(&format!("GVariantDict_u_s @ {:p}", self))
2240             .field("asv", &self.asv)
2241             .field("partial_magic", &self.partial_magic)
2242             .field("y", &self.y)
2243             .finish()
2244     }
2245 }
2246 
2247 #[repr(C)]
2248 #[derive(Copy, Clone)]
2249 pub struct GVariantIter {
2250     pub x: [size_t; 16],
2251 }
2252 
2253 impl ::std::fmt::Debug for GVariantIter {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2254     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2255         f.debug_struct(&format!("GVariantIter @ {:p}", self))
2256             .finish()
2257     }
2258 }
2259 
2260 #[repr(C)]
2261 pub struct GVariantType(c_void);
2262 
2263 impl ::std::fmt::Debug for GVariantType {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result2264     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2265         f.debug_struct(&format!("GVariantType @ {:p}", self))
2266             .finish()
2267     }
2268 }
2269 
2270 #[link(name = "gobject-2.0")]
2271 #[link(name = "glib-2.0")]
2272 extern "C" {
2273 
2274     //=========================================================================
2275     // GIOCondition
2276     //=========================================================================
g_io_condition_get_type() -> GType2277     pub fn g_io_condition_get_type() -> GType;
2278 
2279     //=========================================================================
2280     // GMutex
2281     //=========================================================================
g_mutex_clear(mutex: *mut GMutex)2282     pub fn g_mutex_clear(mutex: *mut GMutex);
g_mutex_init(mutex: *mut GMutex)2283     pub fn g_mutex_init(mutex: *mut GMutex);
g_mutex_lock(mutex: *mut GMutex)2284     pub fn g_mutex_lock(mutex: *mut GMutex);
g_mutex_trylock(mutex: *mut GMutex) -> gboolean2285     pub fn g_mutex_trylock(mutex: *mut GMutex) -> gboolean;
g_mutex_unlock(mutex: *mut GMutex)2286     pub fn g_mutex_unlock(mutex: *mut GMutex);
2287 
2288     //=========================================================================
2289     // GArray
2290     //=========================================================================
g_array_get_type() -> GType2291     pub fn g_array_get_type() -> GType;
g_array_append_vals(array: *mut GArray, data: gconstpointer, len: c_uint) -> *mut GArray2292     pub fn g_array_append_vals(array: *mut GArray, data: gconstpointer, len: c_uint)
2293         -> *mut GArray;
2294     #[cfg(any(feature = "v2_62", feature = "dox"))]
2295     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_array_binary_search( array: *mut GArray, target: gconstpointer, compare_func: GCompareFunc, out_match_index: *mut c_uint, ) -> gboolean2296     pub fn g_array_binary_search(
2297         array: *mut GArray,
2298         target: gconstpointer,
2299         compare_func: GCompareFunc,
2300         out_match_index: *mut c_uint,
2301     ) -> gboolean;
2302     #[cfg(any(feature = "v2_62", feature = "dox"))]
2303     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_array_copy(array: *mut GArray) -> *mut GArray2304     pub fn g_array_copy(array: *mut GArray) -> *mut GArray;
g_array_free(array: *mut GArray, free_segment: gboolean) -> *mut c_char2305     pub fn g_array_free(array: *mut GArray, free_segment: gboolean) -> *mut c_char;
g_array_get_element_size(array: *mut GArray) -> c_uint2306     pub fn g_array_get_element_size(array: *mut GArray) -> c_uint;
g_array_insert_vals( array: *mut GArray, index_: c_uint, data: gconstpointer, len: c_uint, ) -> *mut GArray2307     pub fn g_array_insert_vals(
2308         array: *mut GArray,
2309         index_: c_uint,
2310         data: gconstpointer,
2311         len: c_uint,
2312     ) -> *mut GArray;
g_array_new( zero_terminated: gboolean, clear_: gboolean, element_size: c_uint, ) -> *mut GArray2313     pub fn g_array_new(
2314         zero_terminated: gboolean,
2315         clear_: gboolean,
2316         element_size: c_uint,
2317     ) -> *mut GArray;
g_array_prepend_vals( array: *mut GArray, data: gconstpointer, len: c_uint, ) -> *mut GArray2318     pub fn g_array_prepend_vals(
2319         array: *mut GArray,
2320         data: gconstpointer,
2321         len: c_uint,
2322     ) -> *mut GArray;
g_array_ref(array: *mut GArray) -> *mut GArray2323     pub fn g_array_ref(array: *mut GArray) -> *mut GArray;
g_array_remove_index(array: *mut GArray, index_: c_uint) -> *mut GArray2324     pub fn g_array_remove_index(array: *mut GArray, index_: c_uint) -> *mut GArray;
g_array_remove_index_fast(array: *mut GArray, index_: c_uint) -> *mut GArray2325     pub fn g_array_remove_index_fast(array: *mut GArray, index_: c_uint) -> *mut GArray;
g_array_remove_range(array: *mut GArray, index_: c_uint, length: c_uint) -> *mut GArray2326     pub fn g_array_remove_range(array: *mut GArray, index_: c_uint, length: c_uint) -> *mut GArray;
g_array_set_clear_func(array: *mut GArray, clear_func: GDestroyNotify)2327     pub fn g_array_set_clear_func(array: *mut GArray, clear_func: GDestroyNotify);
g_array_set_size(array: *mut GArray, length: c_uint) -> *mut GArray2328     pub fn g_array_set_size(array: *mut GArray, length: c_uint) -> *mut GArray;
g_array_sized_new( zero_terminated: gboolean, clear_: gboolean, element_size: c_uint, reserved_size: c_uint, ) -> *mut GArray2329     pub fn g_array_sized_new(
2330         zero_terminated: gboolean,
2331         clear_: gboolean,
2332         element_size: c_uint,
2333         reserved_size: c_uint,
2334     ) -> *mut GArray;
g_array_sort(array: *mut GArray, compare_func: GCompareFunc)2335     pub fn g_array_sort(array: *mut GArray, compare_func: GCompareFunc);
g_array_sort_with_data( array: *mut GArray, compare_func: GCompareDataFunc, user_data: gpointer, )2336     pub fn g_array_sort_with_data(
2337         array: *mut GArray,
2338         compare_func: GCompareDataFunc,
2339         user_data: gpointer,
2340     );
2341     #[cfg(any(feature = "v2_64", feature = "dox"))]
2342     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_64")))]
g_array_steal(array: *mut GArray, len: *mut size_t) -> gpointer2343     pub fn g_array_steal(array: *mut GArray, len: *mut size_t) -> gpointer;
g_array_unref(array: *mut GArray)2344     pub fn g_array_unref(array: *mut GArray);
2345 
2346     //=========================================================================
2347     // GAsyncQueue
2348     //=========================================================================
g_async_queue_length(queue: *mut GAsyncQueue) -> c_int2349     pub fn g_async_queue_length(queue: *mut GAsyncQueue) -> c_int;
g_async_queue_length_unlocked(queue: *mut GAsyncQueue) -> c_int2350     pub fn g_async_queue_length_unlocked(queue: *mut GAsyncQueue) -> c_int;
g_async_queue_lock(queue: *mut GAsyncQueue)2351     pub fn g_async_queue_lock(queue: *mut GAsyncQueue);
g_async_queue_pop(queue: *mut GAsyncQueue) -> gpointer2352     pub fn g_async_queue_pop(queue: *mut GAsyncQueue) -> gpointer;
g_async_queue_pop_unlocked(queue: *mut GAsyncQueue) -> gpointer2353     pub fn g_async_queue_pop_unlocked(queue: *mut GAsyncQueue) -> gpointer;
g_async_queue_push(queue: *mut GAsyncQueue, data: gpointer)2354     pub fn g_async_queue_push(queue: *mut GAsyncQueue, data: gpointer);
g_async_queue_push_front(queue: *mut GAsyncQueue, item: gpointer)2355     pub fn g_async_queue_push_front(queue: *mut GAsyncQueue, item: gpointer);
g_async_queue_push_front_unlocked(queue: *mut GAsyncQueue, item: gpointer)2356     pub fn g_async_queue_push_front_unlocked(queue: *mut GAsyncQueue, item: gpointer);
g_async_queue_push_sorted( queue: *mut GAsyncQueue, data: gpointer, func: GCompareDataFunc, user_data: gpointer, )2357     pub fn g_async_queue_push_sorted(
2358         queue: *mut GAsyncQueue,
2359         data: gpointer,
2360         func: GCompareDataFunc,
2361         user_data: gpointer,
2362     );
g_async_queue_push_sorted_unlocked( queue: *mut GAsyncQueue, data: gpointer, func: GCompareDataFunc, user_data: gpointer, )2363     pub fn g_async_queue_push_sorted_unlocked(
2364         queue: *mut GAsyncQueue,
2365         data: gpointer,
2366         func: GCompareDataFunc,
2367         user_data: gpointer,
2368     );
g_async_queue_push_unlocked(queue: *mut GAsyncQueue, data: gpointer)2369     pub fn g_async_queue_push_unlocked(queue: *mut GAsyncQueue, data: gpointer);
g_async_queue_ref(queue: *mut GAsyncQueue) -> *mut GAsyncQueue2370     pub fn g_async_queue_ref(queue: *mut GAsyncQueue) -> *mut GAsyncQueue;
g_async_queue_ref_unlocked(queue: *mut GAsyncQueue)2371     pub fn g_async_queue_ref_unlocked(queue: *mut GAsyncQueue);
g_async_queue_remove(queue: *mut GAsyncQueue, item: gpointer) -> gboolean2372     pub fn g_async_queue_remove(queue: *mut GAsyncQueue, item: gpointer) -> gboolean;
g_async_queue_remove_unlocked(queue: *mut GAsyncQueue, item: gpointer) -> gboolean2373     pub fn g_async_queue_remove_unlocked(queue: *mut GAsyncQueue, item: gpointer) -> gboolean;
g_async_queue_sort(queue: *mut GAsyncQueue, func: GCompareDataFunc, user_data: gpointer)2374     pub fn g_async_queue_sort(queue: *mut GAsyncQueue, func: GCompareDataFunc, user_data: gpointer);
g_async_queue_sort_unlocked( queue: *mut GAsyncQueue, func: GCompareDataFunc, user_data: gpointer, )2375     pub fn g_async_queue_sort_unlocked(
2376         queue: *mut GAsyncQueue,
2377         func: GCompareDataFunc,
2378         user_data: gpointer,
2379     );
g_async_queue_timed_pop(queue: *mut GAsyncQueue, end_time: *mut GTimeVal) -> gpointer2380     pub fn g_async_queue_timed_pop(queue: *mut GAsyncQueue, end_time: *mut GTimeVal) -> gpointer;
g_async_queue_timed_pop_unlocked( queue: *mut GAsyncQueue, end_time: *mut GTimeVal, ) -> gpointer2381     pub fn g_async_queue_timed_pop_unlocked(
2382         queue: *mut GAsyncQueue,
2383         end_time: *mut GTimeVal,
2384     ) -> gpointer;
g_async_queue_timeout_pop(queue: *mut GAsyncQueue, timeout: u64) -> gpointer2385     pub fn g_async_queue_timeout_pop(queue: *mut GAsyncQueue, timeout: u64) -> gpointer;
g_async_queue_timeout_pop_unlocked(queue: *mut GAsyncQueue, timeout: u64) -> gpointer2386     pub fn g_async_queue_timeout_pop_unlocked(queue: *mut GAsyncQueue, timeout: u64) -> gpointer;
g_async_queue_try_pop(queue: *mut GAsyncQueue) -> gpointer2387     pub fn g_async_queue_try_pop(queue: *mut GAsyncQueue) -> gpointer;
g_async_queue_try_pop_unlocked(queue: *mut GAsyncQueue) -> gpointer2388     pub fn g_async_queue_try_pop_unlocked(queue: *mut GAsyncQueue) -> gpointer;
g_async_queue_unlock(queue: *mut GAsyncQueue)2389     pub fn g_async_queue_unlock(queue: *mut GAsyncQueue);
g_async_queue_unref(queue: *mut GAsyncQueue)2390     pub fn g_async_queue_unref(queue: *mut GAsyncQueue);
g_async_queue_unref_and_unlock(queue: *mut GAsyncQueue)2391     pub fn g_async_queue_unref_and_unlock(queue: *mut GAsyncQueue);
g_async_queue_new() -> *mut GAsyncQueue2392     pub fn g_async_queue_new() -> *mut GAsyncQueue;
g_async_queue_new_full(item_free_func: GDestroyNotify) -> *mut GAsyncQueue2393     pub fn g_async_queue_new_full(item_free_func: GDestroyNotify) -> *mut GAsyncQueue;
2394 
2395     //=========================================================================
2396     // GBookmarkFile
2397     //=========================================================================
g_bookmark_file_add_application( bookmark: *mut GBookmarkFile, uri: *const c_char, name: *const c_char, exec: *const c_char, )2398     pub fn g_bookmark_file_add_application(
2399         bookmark: *mut GBookmarkFile,
2400         uri: *const c_char,
2401         name: *const c_char,
2402         exec: *const c_char,
2403     );
g_bookmark_file_add_group( bookmark: *mut GBookmarkFile, uri: *const c_char, group: *const c_char, )2404     pub fn g_bookmark_file_add_group(
2405         bookmark: *mut GBookmarkFile,
2406         uri: *const c_char,
2407         group: *const c_char,
2408     );
g_bookmark_file_free(bookmark: *mut GBookmarkFile)2409     pub fn g_bookmark_file_free(bookmark: *mut GBookmarkFile);
g_bookmark_file_get_added( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> c_long2410     pub fn g_bookmark_file_get_added(
2411         bookmark: *mut GBookmarkFile,
2412         uri: *const c_char,
2413         error: *mut *mut GError,
2414     ) -> c_long;
2415     #[cfg(any(feature = "v2_66", feature = "dox"))]
2416     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_bookmark_file_get_added_date_time( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> *mut GDateTime2417     pub fn g_bookmark_file_get_added_date_time(
2418         bookmark: *mut GBookmarkFile,
2419         uri: *const c_char,
2420         error: *mut *mut GError,
2421     ) -> *mut GDateTime;
g_bookmark_file_get_app_info( bookmark: *mut GBookmarkFile, uri: *const c_char, name: *const c_char, exec: *mut *mut c_char, count: *mut c_uint, stamp: *mut c_long, error: *mut *mut GError, ) -> gboolean2422     pub fn g_bookmark_file_get_app_info(
2423         bookmark: *mut GBookmarkFile,
2424         uri: *const c_char,
2425         name: *const c_char,
2426         exec: *mut *mut c_char,
2427         count: *mut c_uint,
2428         stamp: *mut c_long,
2429         error: *mut *mut GError,
2430     ) -> gboolean;
2431     #[cfg(any(feature = "v2_66", feature = "dox"))]
2432     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_bookmark_file_get_application_info( bookmark: *mut GBookmarkFile, uri: *const c_char, name: *const c_char, exec: *mut *mut c_char, count: *mut c_uint, stamp: *mut *mut GDateTime, error: *mut *mut GError, ) -> gboolean2433     pub fn g_bookmark_file_get_application_info(
2434         bookmark: *mut GBookmarkFile,
2435         uri: *const c_char,
2436         name: *const c_char,
2437         exec: *mut *mut c_char,
2438         count: *mut c_uint,
2439         stamp: *mut *mut GDateTime,
2440         error: *mut *mut GError,
2441     ) -> gboolean;
g_bookmark_file_get_applications( bookmark: *mut GBookmarkFile, uri: *const c_char, length: *mut size_t, error: *mut *mut GError, ) -> *mut *mut c_char2442     pub fn g_bookmark_file_get_applications(
2443         bookmark: *mut GBookmarkFile,
2444         uri: *const c_char,
2445         length: *mut size_t,
2446         error: *mut *mut GError,
2447     ) -> *mut *mut c_char;
g_bookmark_file_get_description( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> *mut c_char2448     pub fn g_bookmark_file_get_description(
2449         bookmark: *mut GBookmarkFile,
2450         uri: *const c_char,
2451         error: *mut *mut GError,
2452     ) -> *mut c_char;
g_bookmark_file_get_groups( bookmark: *mut GBookmarkFile, uri: *const c_char, length: *mut size_t, error: *mut *mut GError, ) -> *mut *mut c_char2453     pub fn g_bookmark_file_get_groups(
2454         bookmark: *mut GBookmarkFile,
2455         uri: *const c_char,
2456         length: *mut size_t,
2457         error: *mut *mut GError,
2458     ) -> *mut *mut c_char;
g_bookmark_file_get_icon( bookmark: *mut GBookmarkFile, uri: *const c_char, href: *mut *mut c_char, mime_type: *mut *mut c_char, error: *mut *mut GError, ) -> gboolean2459     pub fn g_bookmark_file_get_icon(
2460         bookmark: *mut GBookmarkFile,
2461         uri: *const c_char,
2462         href: *mut *mut c_char,
2463         mime_type: *mut *mut c_char,
2464         error: *mut *mut GError,
2465     ) -> gboolean;
g_bookmark_file_get_is_private( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> gboolean2466     pub fn g_bookmark_file_get_is_private(
2467         bookmark: *mut GBookmarkFile,
2468         uri: *const c_char,
2469         error: *mut *mut GError,
2470     ) -> gboolean;
g_bookmark_file_get_mime_type( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> *mut c_char2471     pub fn g_bookmark_file_get_mime_type(
2472         bookmark: *mut GBookmarkFile,
2473         uri: *const c_char,
2474         error: *mut *mut GError,
2475     ) -> *mut c_char;
g_bookmark_file_get_modified( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> c_long2476     pub fn g_bookmark_file_get_modified(
2477         bookmark: *mut GBookmarkFile,
2478         uri: *const c_char,
2479         error: *mut *mut GError,
2480     ) -> c_long;
2481     #[cfg(any(feature = "v2_66", feature = "dox"))]
2482     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_bookmark_file_get_modified_date_time( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> *mut GDateTime2483     pub fn g_bookmark_file_get_modified_date_time(
2484         bookmark: *mut GBookmarkFile,
2485         uri: *const c_char,
2486         error: *mut *mut GError,
2487     ) -> *mut GDateTime;
g_bookmark_file_get_size(bookmark: *mut GBookmarkFile) -> c_int2488     pub fn g_bookmark_file_get_size(bookmark: *mut GBookmarkFile) -> c_int;
g_bookmark_file_get_title( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> *mut c_char2489     pub fn g_bookmark_file_get_title(
2490         bookmark: *mut GBookmarkFile,
2491         uri: *const c_char,
2492         error: *mut *mut GError,
2493     ) -> *mut c_char;
g_bookmark_file_get_uris( bookmark: *mut GBookmarkFile, length: *mut size_t, ) -> *mut *mut c_char2494     pub fn g_bookmark_file_get_uris(
2495         bookmark: *mut GBookmarkFile,
2496         length: *mut size_t,
2497     ) -> *mut *mut c_char;
g_bookmark_file_get_visited( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> c_long2498     pub fn g_bookmark_file_get_visited(
2499         bookmark: *mut GBookmarkFile,
2500         uri: *const c_char,
2501         error: *mut *mut GError,
2502     ) -> c_long;
2503     #[cfg(any(feature = "v2_66", feature = "dox"))]
2504     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_bookmark_file_get_visited_date_time( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> *mut GDateTime2505     pub fn g_bookmark_file_get_visited_date_time(
2506         bookmark: *mut GBookmarkFile,
2507         uri: *const c_char,
2508         error: *mut *mut GError,
2509     ) -> *mut GDateTime;
g_bookmark_file_has_application( bookmark: *mut GBookmarkFile, uri: *const c_char, name: *const c_char, error: *mut *mut GError, ) -> gboolean2510     pub fn g_bookmark_file_has_application(
2511         bookmark: *mut GBookmarkFile,
2512         uri: *const c_char,
2513         name: *const c_char,
2514         error: *mut *mut GError,
2515     ) -> gboolean;
g_bookmark_file_has_group( bookmark: *mut GBookmarkFile, uri: *const c_char, group: *const c_char, error: *mut *mut GError, ) -> gboolean2516     pub fn g_bookmark_file_has_group(
2517         bookmark: *mut GBookmarkFile,
2518         uri: *const c_char,
2519         group: *const c_char,
2520         error: *mut *mut GError,
2521     ) -> gboolean;
g_bookmark_file_has_item(bookmark: *mut GBookmarkFile, uri: *const c_char) -> gboolean2522     pub fn g_bookmark_file_has_item(bookmark: *mut GBookmarkFile, uri: *const c_char) -> gboolean;
g_bookmark_file_load_from_data( bookmark: *mut GBookmarkFile, data: *const u8, length: size_t, error: *mut *mut GError, ) -> gboolean2523     pub fn g_bookmark_file_load_from_data(
2524         bookmark: *mut GBookmarkFile,
2525         data: *const u8,
2526         length: size_t,
2527         error: *mut *mut GError,
2528     ) -> gboolean;
g_bookmark_file_load_from_data_dirs( bookmark: *mut GBookmarkFile, file: *const c_char, full_path: *mut *mut c_char, error: *mut *mut GError, ) -> gboolean2529     pub fn g_bookmark_file_load_from_data_dirs(
2530         bookmark: *mut GBookmarkFile,
2531         file: *const c_char,
2532         full_path: *mut *mut c_char,
2533         error: *mut *mut GError,
2534     ) -> gboolean;
g_bookmark_file_load_from_file( bookmark: *mut GBookmarkFile, filename: *const c_char, error: *mut *mut GError, ) -> gboolean2535     pub fn g_bookmark_file_load_from_file(
2536         bookmark: *mut GBookmarkFile,
2537         filename: *const c_char,
2538         error: *mut *mut GError,
2539     ) -> gboolean;
g_bookmark_file_move_item( bookmark: *mut GBookmarkFile, old_uri: *const c_char, new_uri: *const c_char, error: *mut *mut GError, ) -> gboolean2540     pub fn g_bookmark_file_move_item(
2541         bookmark: *mut GBookmarkFile,
2542         old_uri: *const c_char,
2543         new_uri: *const c_char,
2544         error: *mut *mut GError,
2545     ) -> gboolean;
g_bookmark_file_remove_application( bookmark: *mut GBookmarkFile, uri: *const c_char, name: *const c_char, error: *mut *mut GError, ) -> gboolean2546     pub fn g_bookmark_file_remove_application(
2547         bookmark: *mut GBookmarkFile,
2548         uri: *const c_char,
2549         name: *const c_char,
2550         error: *mut *mut GError,
2551     ) -> gboolean;
g_bookmark_file_remove_group( bookmark: *mut GBookmarkFile, uri: *const c_char, group: *const c_char, error: *mut *mut GError, ) -> gboolean2552     pub fn g_bookmark_file_remove_group(
2553         bookmark: *mut GBookmarkFile,
2554         uri: *const c_char,
2555         group: *const c_char,
2556         error: *mut *mut GError,
2557     ) -> gboolean;
g_bookmark_file_remove_item( bookmark: *mut GBookmarkFile, uri: *const c_char, error: *mut *mut GError, ) -> gboolean2558     pub fn g_bookmark_file_remove_item(
2559         bookmark: *mut GBookmarkFile,
2560         uri: *const c_char,
2561         error: *mut *mut GError,
2562     ) -> gboolean;
g_bookmark_file_set_added( bookmark: *mut GBookmarkFile, uri: *const c_char, added: c_long, )2563     pub fn g_bookmark_file_set_added(
2564         bookmark: *mut GBookmarkFile,
2565         uri: *const c_char,
2566         added: c_long,
2567     );
2568     #[cfg(any(feature = "v2_66", feature = "dox"))]
2569     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_bookmark_file_set_added_date_time( bookmark: *mut GBookmarkFile, uri: *const c_char, added: *mut GDateTime, )2570     pub fn g_bookmark_file_set_added_date_time(
2571         bookmark: *mut GBookmarkFile,
2572         uri: *const c_char,
2573         added: *mut GDateTime,
2574     );
g_bookmark_file_set_app_info( bookmark: *mut GBookmarkFile, uri: *const c_char, name: *const c_char, exec: *const c_char, count: c_int, stamp: c_long, error: *mut *mut GError, ) -> gboolean2575     pub fn g_bookmark_file_set_app_info(
2576         bookmark: *mut GBookmarkFile,
2577         uri: *const c_char,
2578         name: *const c_char,
2579         exec: *const c_char,
2580         count: c_int,
2581         stamp: c_long,
2582         error: *mut *mut GError,
2583     ) -> gboolean;
2584     #[cfg(any(feature = "v2_66", feature = "dox"))]
2585     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_bookmark_file_set_application_info( bookmark: *mut GBookmarkFile, uri: *const c_char, name: *const c_char, exec: *const c_char, count: c_int, stamp: *mut GDateTime, error: *mut *mut GError, ) -> gboolean2586     pub fn g_bookmark_file_set_application_info(
2587         bookmark: *mut GBookmarkFile,
2588         uri: *const c_char,
2589         name: *const c_char,
2590         exec: *const c_char,
2591         count: c_int,
2592         stamp: *mut GDateTime,
2593         error: *mut *mut GError,
2594     ) -> gboolean;
g_bookmark_file_set_description( bookmark: *mut GBookmarkFile, uri: *const c_char, description: *const c_char, )2595     pub fn g_bookmark_file_set_description(
2596         bookmark: *mut GBookmarkFile,
2597         uri: *const c_char,
2598         description: *const c_char,
2599     );
g_bookmark_file_set_groups( bookmark: *mut GBookmarkFile, uri: *const c_char, groups: *mut *const c_char, length: size_t, )2600     pub fn g_bookmark_file_set_groups(
2601         bookmark: *mut GBookmarkFile,
2602         uri: *const c_char,
2603         groups: *mut *const c_char,
2604         length: size_t,
2605     );
g_bookmark_file_set_icon( bookmark: *mut GBookmarkFile, uri: *const c_char, href: *const c_char, mime_type: *const c_char, )2606     pub fn g_bookmark_file_set_icon(
2607         bookmark: *mut GBookmarkFile,
2608         uri: *const c_char,
2609         href: *const c_char,
2610         mime_type: *const c_char,
2611     );
g_bookmark_file_set_is_private( bookmark: *mut GBookmarkFile, uri: *const c_char, is_private: gboolean, )2612     pub fn g_bookmark_file_set_is_private(
2613         bookmark: *mut GBookmarkFile,
2614         uri: *const c_char,
2615         is_private: gboolean,
2616     );
g_bookmark_file_set_mime_type( bookmark: *mut GBookmarkFile, uri: *const c_char, mime_type: *const c_char, )2617     pub fn g_bookmark_file_set_mime_type(
2618         bookmark: *mut GBookmarkFile,
2619         uri: *const c_char,
2620         mime_type: *const c_char,
2621     );
g_bookmark_file_set_modified( bookmark: *mut GBookmarkFile, uri: *const c_char, modified: c_long, )2622     pub fn g_bookmark_file_set_modified(
2623         bookmark: *mut GBookmarkFile,
2624         uri: *const c_char,
2625         modified: c_long,
2626     );
2627     #[cfg(any(feature = "v2_66", feature = "dox"))]
2628     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_bookmark_file_set_modified_date_time( bookmark: *mut GBookmarkFile, uri: *const c_char, modified: *mut GDateTime, )2629     pub fn g_bookmark_file_set_modified_date_time(
2630         bookmark: *mut GBookmarkFile,
2631         uri: *const c_char,
2632         modified: *mut GDateTime,
2633     );
g_bookmark_file_set_title( bookmark: *mut GBookmarkFile, uri: *const c_char, title: *const c_char, )2634     pub fn g_bookmark_file_set_title(
2635         bookmark: *mut GBookmarkFile,
2636         uri: *const c_char,
2637         title: *const c_char,
2638     );
g_bookmark_file_set_visited( bookmark: *mut GBookmarkFile, uri: *const c_char, visited: c_long, )2639     pub fn g_bookmark_file_set_visited(
2640         bookmark: *mut GBookmarkFile,
2641         uri: *const c_char,
2642         visited: c_long,
2643     );
2644     #[cfg(any(feature = "v2_66", feature = "dox"))]
2645     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_bookmark_file_set_visited_date_time( bookmark: *mut GBookmarkFile, uri: *const c_char, visited: *mut GDateTime, )2646     pub fn g_bookmark_file_set_visited_date_time(
2647         bookmark: *mut GBookmarkFile,
2648         uri: *const c_char,
2649         visited: *mut GDateTime,
2650     );
g_bookmark_file_to_data( bookmark: *mut GBookmarkFile, length: *mut size_t, error: *mut *mut GError, ) -> *mut u82651     pub fn g_bookmark_file_to_data(
2652         bookmark: *mut GBookmarkFile,
2653         length: *mut size_t,
2654         error: *mut *mut GError,
2655     ) -> *mut u8;
g_bookmark_file_to_file( bookmark: *mut GBookmarkFile, filename: *const c_char, error: *mut *mut GError, ) -> gboolean2656     pub fn g_bookmark_file_to_file(
2657         bookmark: *mut GBookmarkFile,
2658         filename: *const c_char,
2659         error: *mut *mut GError,
2660     ) -> gboolean;
g_bookmark_file_error_quark() -> GQuark2661     pub fn g_bookmark_file_error_quark() -> GQuark;
g_bookmark_file_new() -> *mut GBookmarkFile2662     pub fn g_bookmark_file_new() -> *mut GBookmarkFile;
2663 
2664     //=========================================================================
2665     // GByteArray
2666     //=========================================================================
g_byte_array_get_type() -> GType2667     pub fn g_byte_array_get_type() -> GType;
g_byte_array_append( array: *mut GByteArray, data: *const u8, len: c_uint, ) -> *mut GByteArray2668     pub fn g_byte_array_append(
2669         array: *mut GByteArray,
2670         data: *const u8,
2671         len: c_uint,
2672     ) -> *mut GByteArray;
g_byte_array_free(array: *mut GByteArray, free_segment: gboolean) -> *mut u82673     pub fn g_byte_array_free(array: *mut GByteArray, free_segment: gboolean) -> *mut u8;
g_byte_array_free_to_bytes(array: *mut GByteArray) -> *mut GBytes2674     pub fn g_byte_array_free_to_bytes(array: *mut GByteArray) -> *mut GBytes;
g_byte_array_new() -> *mut GByteArray2675     pub fn g_byte_array_new() -> *mut GByteArray;
g_byte_array_new_take(data: *mut u8, len: size_t) -> *mut GByteArray2676     pub fn g_byte_array_new_take(data: *mut u8, len: size_t) -> *mut GByteArray;
g_byte_array_prepend( array: *mut GByteArray, data: *const u8, len: c_uint, ) -> *mut GByteArray2677     pub fn g_byte_array_prepend(
2678         array: *mut GByteArray,
2679         data: *const u8,
2680         len: c_uint,
2681     ) -> *mut GByteArray;
g_byte_array_ref(array: *mut GByteArray) -> *mut GByteArray2682     pub fn g_byte_array_ref(array: *mut GByteArray) -> *mut GByteArray;
g_byte_array_remove_index(array: *mut GByteArray, index_: c_uint) -> *mut GByteArray2683     pub fn g_byte_array_remove_index(array: *mut GByteArray, index_: c_uint) -> *mut GByteArray;
g_byte_array_remove_index_fast( array: *mut GByteArray, index_: c_uint, ) -> *mut GByteArray2684     pub fn g_byte_array_remove_index_fast(
2685         array: *mut GByteArray,
2686         index_: c_uint,
2687     ) -> *mut GByteArray;
g_byte_array_remove_range( array: *mut GByteArray, index_: c_uint, length: c_uint, ) -> *mut GByteArray2688     pub fn g_byte_array_remove_range(
2689         array: *mut GByteArray,
2690         index_: c_uint,
2691         length: c_uint,
2692     ) -> *mut GByteArray;
g_byte_array_set_size(array: *mut GByteArray, length: c_uint) -> *mut GByteArray2693     pub fn g_byte_array_set_size(array: *mut GByteArray, length: c_uint) -> *mut GByteArray;
g_byte_array_sized_new(reserved_size: c_uint) -> *mut GByteArray2694     pub fn g_byte_array_sized_new(reserved_size: c_uint) -> *mut GByteArray;
g_byte_array_sort(array: *mut GByteArray, compare_func: GCompareFunc)2695     pub fn g_byte_array_sort(array: *mut GByteArray, compare_func: GCompareFunc);
g_byte_array_sort_with_data( array: *mut GByteArray, compare_func: GCompareDataFunc, user_data: gpointer, )2696     pub fn g_byte_array_sort_with_data(
2697         array: *mut GByteArray,
2698         compare_func: GCompareDataFunc,
2699         user_data: gpointer,
2700     );
2701     #[cfg(any(feature = "v2_64", feature = "dox"))]
2702     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_64")))]
g_byte_array_steal(array: *mut GByteArray, len: *mut size_t) -> *mut u82703     pub fn g_byte_array_steal(array: *mut GByteArray, len: *mut size_t) -> *mut u8;
g_byte_array_unref(array: *mut GByteArray)2704     pub fn g_byte_array_unref(array: *mut GByteArray);
2705 
2706     //=========================================================================
2707     // GBytes
2708     //=========================================================================
g_bytes_get_type() -> GType2709     pub fn g_bytes_get_type() -> GType;
g_bytes_new(data: gconstpointer, size: size_t) -> *mut GBytes2710     pub fn g_bytes_new(data: gconstpointer, size: size_t) -> *mut GBytes;
g_bytes_new_static(data: gconstpointer, size: size_t) -> *mut GBytes2711     pub fn g_bytes_new_static(data: gconstpointer, size: size_t) -> *mut GBytes;
g_bytes_new_take(data: gpointer, size: size_t) -> *mut GBytes2712     pub fn g_bytes_new_take(data: gpointer, size: size_t) -> *mut GBytes;
g_bytes_new_with_free_func( data: gconstpointer, size: size_t, free_func: GDestroyNotify, user_data: gpointer, ) -> *mut GBytes2713     pub fn g_bytes_new_with_free_func(
2714         data: gconstpointer,
2715         size: size_t,
2716         free_func: GDestroyNotify,
2717         user_data: gpointer,
2718     ) -> *mut GBytes;
g_bytes_compare(bytes1: gconstpointer, bytes2: gconstpointer) -> c_int2719     pub fn g_bytes_compare(bytes1: gconstpointer, bytes2: gconstpointer) -> c_int;
g_bytes_equal(bytes1: gconstpointer, bytes2: gconstpointer) -> gboolean2720     pub fn g_bytes_equal(bytes1: gconstpointer, bytes2: gconstpointer) -> gboolean;
g_bytes_get_data(bytes: *mut GBytes, size: *mut size_t) -> gconstpointer2721     pub fn g_bytes_get_data(bytes: *mut GBytes, size: *mut size_t) -> gconstpointer;
g_bytes_get_size(bytes: *mut GBytes) -> size_t2722     pub fn g_bytes_get_size(bytes: *mut GBytes) -> size_t;
g_bytes_hash(bytes: gconstpointer) -> c_uint2723     pub fn g_bytes_hash(bytes: gconstpointer) -> c_uint;
g_bytes_new_from_bytes( bytes: *mut GBytes, offset: size_t, length: size_t, ) -> *mut GBytes2724     pub fn g_bytes_new_from_bytes(
2725         bytes: *mut GBytes,
2726         offset: size_t,
2727         length: size_t,
2728     ) -> *mut GBytes;
g_bytes_ref(bytes: *mut GBytes) -> *mut GBytes2729     pub fn g_bytes_ref(bytes: *mut GBytes) -> *mut GBytes;
g_bytes_unref(bytes: *mut GBytes)2730     pub fn g_bytes_unref(bytes: *mut GBytes);
g_bytes_unref_to_array(bytes: *mut GBytes) -> *mut GByteArray2731     pub fn g_bytes_unref_to_array(bytes: *mut GBytes) -> *mut GByteArray;
g_bytes_unref_to_data(bytes: *mut GBytes, size: *mut size_t) -> gpointer2732     pub fn g_bytes_unref_to_data(bytes: *mut GBytes, size: *mut size_t) -> gpointer;
2733 
2734     //=========================================================================
2735     // GChecksum
2736     //=========================================================================
g_checksum_get_type() -> GType2737     pub fn g_checksum_get_type() -> GType;
g_checksum_new(checksum_type: GChecksumType) -> *mut GChecksum2738     pub fn g_checksum_new(checksum_type: GChecksumType) -> *mut GChecksum;
g_checksum_copy(checksum: *const GChecksum) -> *mut GChecksum2739     pub fn g_checksum_copy(checksum: *const GChecksum) -> *mut GChecksum;
g_checksum_free(checksum: *mut GChecksum)2740     pub fn g_checksum_free(checksum: *mut GChecksum);
g_checksum_get_digest( checksum: *mut GChecksum, buffer: *mut u8, digest_len: *mut size_t, )2741     pub fn g_checksum_get_digest(
2742         checksum: *mut GChecksum,
2743         buffer: *mut u8,
2744         digest_len: *mut size_t,
2745     );
g_checksum_get_string(checksum: *mut GChecksum) -> *const c_char2746     pub fn g_checksum_get_string(checksum: *mut GChecksum) -> *const c_char;
g_checksum_reset(checksum: *mut GChecksum)2747     pub fn g_checksum_reset(checksum: *mut GChecksum);
g_checksum_update(checksum: *mut GChecksum, data: *const u8, length: ssize_t)2748     pub fn g_checksum_update(checksum: *mut GChecksum, data: *const u8, length: ssize_t);
g_checksum_type_get_length(checksum_type: GChecksumType) -> ssize_t2749     pub fn g_checksum_type_get_length(checksum_type: GChecksumType) -> ssize_t;
2750 
2751     //=========================================================================
2752     // GCond
2753     //=========================================================================
g_cond_broadcast(cond: *mut GCond)2754     pub fn g_cond_broadcast(cond: *mut GCond);
g_cond_clear(cond: *mut GCond)2755     pub fn g_cond_clear(cond: *mut GCond);
g_cond_init(cond: *mut GCond)2756     pub fn g_cond_init(cond: *mut GCond);
g_cond_signal(cond: *mut GCond)2757     pub fn g_cond_signal(cond: *mut GCond);
g_cond_wait(cond: *mut GCond, mutex: *mut GMutex)2758     pub fn g_cond_wait(cond: *mut GCond, mutex: *mut GMutex);
g_cond_wait_until(cond: *mut GCond, mutex: *mut GMutex, end_time: i64) -> gboolean2759     pub fn g_cond_wait_until(cond: *mut GCond, mutex: *mut GMutex, end_time: i64) -> gboolean;
2760 
2761     //=========================================================================
2762     // GDate
2763     //=========================================================================
g_date_get_type() -> GType2764     pub fn g_date_get_type() -> GType;
g_date_new() -> *mut GDate2765     pub fn g_date_new() -> *mut GDate;
g_date_new_dmy(day: GDateDay, month: GDateMonth, year: GDateYear) -> *mut GDate2766     pub fn g_date_new_dmy(day: GDateDay, month: GDateMonth, year: GDateYear) -> *mut GDate;
g_date_new_julian(julian_day: u32) -> *mut GDate2767     pub fn g_date_new_julian(julian_day: u32) -> *mut GDate;
g_date_add_days(date: *mut GDate, n_days: c_uint)2768     pub fn g_date_add_days(date: *mut GDate, n_days: c_uint);
g_date_add_months(date: *mut GDate, n_months: c_uint)2769     pub fn g_date_add_months(date: *mut GDate, n_months: c_uint);
g_date_add_years(date: *mut GDate, n_years: c_uint)2770     pub fn g_date_add_years(date: *mut GDate, n_years: c_uint);
g_date_clamp(date: *mut GDate, min_date: *const GDate, max_date: *const GDate)2771     pub fn g_date_clamp(date: *mut GDate, min_date: *const GDate, max_date: *const GDate);
g_date_clear(date: *mut GDate, n_dates: c_uint)2772     pub fn g_date_clear(date: *mut GDate, n_dates: c_uint);
g_date_compare(lhs: *const GDate, rhs: *const GDate) -> c_int2773     pub fn g_date_compare(lhs: *const GDate, rhs: *const GDate) -> c_int;
2774     #[cfg(any(feature = "v2_56", feature = "dox"))]
2775     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_56")))]
g_date_copy(date: *const GDate) -> *mut GDate2776     pub fn g_date_copy(date: *const GDate) -> *mut GDate;
g_date_days_between(date1: *const GDate, date2: *const GDate) -> c_int2777     pub fn g_date_days_between(date1: *const GDate, date2: *const GDate) -> c_int;
g_date_free(date: *mut GDate)2778     pub fn g_date_free(date: *mut GDate);
g_date_get_day(date: *const GDate) -> GDateDay2779     pub fn g_date_get_day(date: *const GDate) -> GDateDay;
g_date_get_day_of_year(date: *const GDate) -> c_uint2780     pub fn g_date_get_day_of_year(date: *const GDate) -> c_uint;
g_date_get_iso8601_week_of_year(date: *const GDate) -> c_uint2781     pub fn g_date_get_iso8601_week_of_year(date: *const GDate) -> c_uint;
g_date_get_julian(date: *const GDate) -> u322782     pub fn g_date_get_julian(date: *const GDate) -> u32;
g_date_get_monday_week_of_year(date: *const GDate) -> c_uint2783     pub fn g_date_get_monday_week_of_year(date: *const GDate) -> c_uint;
g_date_get_month(date: *const GDate) -> GDateMonth2784     pub fn g_date_get_month(date: *const GDate) -> GDateMonth;
g_date_get_sunday_week_of_year(date: *const GDate) -> c_uint2785     pub fn g_date_get_sunday_week_of_year(date: *const GDate) -> c_uint;
g_date_get_weekday(date: *const GDate) -> GDateWeekday2786     pub fn g_date_get_weekday(date: *const GDate) -> GDateWeekday;
g_date_get_year(date: *const GDate) -> GDateYear2787     pub fn g_date_get_year(date: *const GDate) -> GDateYear;
g_date_is_first_of_month(date: *const GDate) -> gboolean2788     pub fn g_date_is_first_of_month(date: *const GDate) -> gboolean;
g_date_is_last_of_month(date: *const GDate) -> gboolean2789     pub fn g_date_is_last_of_month(date: *const GDate) -> gboolean;
g_date_order(date1: *mut GDate, date2: *mut GDate)2790     pub fn g_date_order(date1: *mut GDate, date2: *mut GDate);
g_date_set_day(date: *mut GDate, day: GDateDay)2791     pub fn g_date_set_day(date: *mut GDate, day: GDateDay);
g_date_set_dmy(date: *mut GDate, day: GDateDay, month: GDateMonth, y: GDateYear)2792     pub fn g_date_set_dmy(date: *mut GDate, day: GDateDay, month: GDateMonth, y: GDateYear);
g_date_set_julian(date: *mut GDate, julian_date: u32)2793     pub fn g_date_set_julian(date: *mut GDate, julian_date: u32);
g_date_set_month(date: *mut GDate, month: GDateMonth)2794     pub fn g_date_set_month(date: *mut GDate, month: GDateMonth);
g_date_set_parse(date: *mut GDate, str: *const c_char)2795     pub fn g_date_set_parse(date: *mut GDate, str: *const c_char);
g_date_set_time(date: *mut GDate, time_: GTime)2796     pub fn g_date_set_time(date: *mut GDate, time_: GTime);
g_date_set_time_t(date: *mut GDate, timet: c_long)2797     pub fn g_date_set_time_t(date: *mut GDate, timet: c_long);
g_date_set_time_val(date: *mut GDate, timeval: *mut GTimeVal)2798     pub fn g_date_set_time_val(date: *mut GDate, timeval: *mut GTimeVal);
g_date_set_year(date: *mut GDate, year: GDateYear)2799     pub fn g_date_set_year(date: *mut GDate, year: GDateYear);
g_date_subtract_days(date: *mut GDate, n_days: c_uint)2800     pub fn g_date_subtract_days(date: *mut GDate, n_days: c_uint);
g_date_subtract_months(date: *mut GDate, n_months: c_uint)2801     pub fn g_date_subtract_months(date: *mut GDate, n_months: c_uint);
g_date_subtract_years(date: *mut GDate, n_years: c_uint)2802     pub fn g_date_subtract_years(date: *mut GDate, n_years: c_uint);
2803     //pub fn g_date_to_struct_tm(date: *const GDate, tm: /*Unimplemented*/*mut tm);
g_date_valid(date: *const GDate) -> gboolean2804     pub fn g_date_valid(date: *const GDate) -> gboolean;
g_date_get_days_in_month(month: GDateMonth, year: GDateYear) -> u82805     pub fn g_date_get_days_in_month(month: GDateMonth, year: GDateYear) -> u8;
g_date_get_monday_weeks_in_year(year: GDateYear) -> u82806     pub fn g_date_get_monday_weeks_in_year(year: GDateYear) -> u8;
g_date_get_sunday_weeks_in_year(year: GDateYear) -> u82807     pub fn g_date_get_sunday_weeks_in_year(year: GDateYear) -> u8;
g_date_is_leap_year(year: GDateYear) -> gboolean2808     pub fn g_date_is_leap_year(year: GDateYear) -> gboolean;
g_date_strftime( s: *mut c_char, slen: size_t, format: *const c_char, date: *const GDate, ) -> size_t2809     pub fn g_date_strftime(
2810         s: *mut c_char,
2811         slen: size_t,
2812         format: *const c_char,
2813         date: *const GDate,
2814     ) -> size_t;
g_date_valid_day(day: GDateDay) -> gboolean2815     pub fn g_date_valid_day(day: GDateDay) -> gboolean;
g_date_valid_dmy(day: GDateDay, month: GDateMonth, year: GDateYear) -> gboolean2816     pub fn g_date_valid_dmy(day: GDateDay, month: GDateMonth, year: GDateYear) -> gboolean;
g_date_valid_julian(julian_date: u32) -> gboolean2817     pub fn g_date_valid_julian(julian_date: u32) -> gboolean;
g_date_valid_month(month: GDateMonth) -> gboolean2818     pub fn g_date_valid_month(month: GDateMonth) -> gboolean;
g_date_valid_weekday(weekday: GDateWeekday) -> gboolean2819     pub fn g_date_valid_weekday(weekday: GDateWeekday) -> gboolean;
g_date_valid_year(year: GDateYear) -> gboolean2820     pub fn g_date_valid_year(year: GDateYear) -> gboolean;
2821 
2822     //=========================================================================
2823     // GDateTime
2824     //=========================================================================
g_date_time_get_type() -> GType2825     pub fn g_date_time_get_type() -> GType;
g_date_time_new( tz: *mut GTimeZone, year: c_int, month: c_int, day: c_int, hour: c_int, minute: c_int, seconds: c_double, ) -> *mut GDateTime2826     pub fn g_date_time_new(
2827         tz: *mut GTimeZone,
2828         year: c_int,
2829         month: c_int,
2830         day: c_int,
2831         hour: c_int,
2832         minute: c_int,
2833         seconds: c_double,
2834     ) -> *mut GDateTime;
2835     #[cfg(any(feature = "v2_56", feature = "dox"))]
2836     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_56")))]
g_date_time_new_from_iso8601( text: *const c_char, default_tz: *mut GTimeZone, ) -> *mut GDateTime2837     pub fn g_date_time_new_from_iso8601(
2838         text: *const c_char,
2839         default_tz: *mut GTimeZone,
2840     ) -> *mut GDateTime;
g_date_time_new_from_timeval_local(tv: *const GTimeVal) -> *mut GDateTime2841     pub fn g_date_time_new_from_timeval_local(tv: *const GTimeVal) -> *mut GDateTime;
g_date_time_new_from_timeval_utc(tv: *const GTimeVal) -> *mut GDateTime2842     pub fn g_date_time_new_from_timeval_utc(tv: *const GTimeVal) -> *mut GDateTime;
g_date_time_new_from_unix_local(t: i64) -> *mut GDateTime2843     pub fn g_date_time_new_from_unix_local(t: i64) -> *mut GDateTime;
g_date_time_new_from_unix_utc(t: i64) -> *mut GDateTime2844     pub fn g_date_time_new_from_unix_utc(t: i64) -> *mut GDateTime;
g_date_time_new_local( year: c_int, month: c_int, day: c_int, hour: c_int, minute: c_int, seconds: c_double, ) -> *mut GDateTime2845     pub fn g_date_time_new_local(
2846         year: c_int,
2847         month: c_int,
2848         day: c_int,
2849         hour: c_int,
2850         minute: c_int,
2851         seconds: c_double,
2852     ) -> *mut GDateTime;
g_date_time_new_now(tz: *mut GTimeZone) -> *mut GDateTime2853     pub fn g_date_time_new_now(tz: *mut GTimeZone) -> *mut GDateTime;
g_date_time_new_now_local() -> *mut GDateTime2854     pub fn g_date_time_new_now_local() -> *mut GDateTime;
g_date_time_new_now_utc() -> *mut GDateTime2855     pub fn g_date_time_new_now_utc() -> *mut GDateTime;
g_date_time_new_utc( year: c_int, month: c_int, day: c_int, hour: c_int, minute: c_int, seconds: c_double, ) -> *mut GDateTime2856     pub fn g_date_time_new_utc(
2857         year: c_int,
2858         month: c_int,
2859         day: c_int,
2860         hour: c_int,
2861         minute: c_int,
2862         seconds: c_double,
2863     ) -> *mut GDateTime;
g_date_time_add(datetime: *mut GDateTime, timespan: GTimeSpan) -> *mut GDateTime2864     pub fn g_date_time_add(datetime: *mut GDateTime, timespan: GTimeSpan) -> *mut GDateTime;
g_date_time_add_days(datetime: *mut GDateTime, days: c_int) -> *mut GDateTime2865     pub fn g_date_time_add_days(datetime: *mut GDateTime, days: c_int) -> *mut GDateTime;
g_date_time_add_full( datetime: *mut GDateTime, years: c_int, months: c_int, days: c_int, hours: c_int, minutes: c_int, seconds: c_double, ) -> *mut GDateTime2866     pub fn g_date_time_add_full(
2867         datetime: *mut GDateTime,
2868         years: c_int,
2869         months: c_int,
2870         days: c_int,
2871         hours: c_int,
2872         minutes: c_int,
2873         seconds: c_double,
2874     ) -> *mut GDateTime;
g_date_time_add_hours(datetime: *mut GDateTime, hours: c_int) -> *mut GDateTime2875     pub fn g_date_time_add_hours(datetime: *mut GDateTime, hours: c_int) -> *mut GDateTime;
g_date_time_add_minutes(datetime: *mut GDateTime, minutes: c_int) -> *mut GDateTime2876     pub fn g_date_time_add_minutes(datetime: *mut GDateTime, minutes: c_int) -> *mut GDateTime;
g_date_time_add_months(datetime: *mut GDateTime, months: c_int) -> *mut GDateTime2877     pub fn g_date_time_add_months(datetime: *mut GDateTime, months: c_int) -> *mut GDateTime;
g_date_time_add_seconds(datetime: *mut GDateTime, seconds: c_double) -> *mut GDateTime2878     pub fn g_date_time_add_seconds(datetime: *mut GDateTime, seconds: c_double) -> *mut GDateTime;
g_date_time_add_weeks(datetime: *mut GDateTime, weeks: c_int) -> *mut GDateTime2879     pub fn g_date_time_add_weeks(datetime: *mut GDateTime, weeks: c_int) -> *mut GDateTime;
g_date_time_add_years(datetime: *mut GDateTime, years: c_int) -> *mut GDateTime2880     pub fn g_date_time_add_years(datetime: *mut GDateTime, years: c_int) -> *mut GDateTime;
g_date_time_compare(dt1: gconstpointer, dt2: gconstpointer) -> c_int2881     pub fn g_date_time_compare(dt1: gconstpointer, dt2: gconstpointer) -> c_int;
g_date_time_difference(end: *mut GDateTime, begin: *mut GDateTime) -> GTimeSpan2882     pub fn g_date_time_difference(end: *mut GDateTime, begin: *mut GDateTime) -> GTimeSpan;
g_date_time_equal(dt1: gconstpointer, dt2: gconstpointer) -> gboolean2883     pub fn g_date_time_equal(dt1: gconstpointer, dt2: gconstpointer) -> gboolean;
g_date_time_format(datetime: *mut GDateTime, format: *const c_char) -> *mut c_char2884     pub fn g_date_time_format(datetime: *mut GDateTime, format: *const c_char) -> *mut c_char;
2885     #[cfg(any(feature = "v2_62", feature = "dox"))]
2886     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_date_time_format_iso8601(datetime: *mut GDateTime) -> *mut c_char2887     pub fn g_date_time_format_iso8601(datetime: *mut GDateTime) -> *mut c_char;
g_date_time_get_day_of_month(datetime: *mut GDateTime) -> c_int2888     pub fn g_date_time_get_day_of_month(datetime: *mut GDateTime) -> c_int;
g_date_time_get_day_of_week(datetime: *mut GDateTime) -> c_int2889     pub fn g_date_time_get_day_of_week(datetime: *mut GDateTime) -> c_int;
g_date_time_get_day_of_year(datetime: *mut GDateTime) -> c_int2890     pub fn g_date_time_get_day_of_year(datetime: *mut GDateTime) -> c_int;
g_date_time_get_hour(datetime: *mut GDateTime) -> c_int2891     pub fn g_date_time_get_hour(datetime: *mut GDateTime) -> c_int;
g_date_time_get_microsecond(datetime: *mut GDateTime) -> c_int2892     pub fn g_date_time_get_microsecond(datetime: *mut GDateTime) -> c_int;
g_date_time_get_minute(datetime: *mut GDateTime) -> c_int2893     pub fn g_date_time_get_minute(datetime: *mut GDateTime) -> c_int;
g_date_time_get_month(datetime: *mut GDateTime) -> c_int2894     pub fn g_date_time_get_month(datetime: *mut GDateTime) -> c_int;
g_date_time_get_second(datetime: *mut GDateTime) -> c_int2895     pub fn g_date_time_get_second(datetime: *mut GDateTime) -> c_int;
g_date_time_get_seconds(datetime: *mut GDateTime) -> c_double2896     pub fn g_date_time_get_seconds(datetime: *mut GDateTime) -> c_double;
2897     #[cfg(any(feature = "v2_58", feature = "dox"))]
2898     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_date_time_get_timezone(datetime: *mut GDateTime) -> *mut GTimeZone2899     pub fn g_date_time_get_timezone(datetime: *mut GDateTime) -> *mut GTimeZone;
g_date_time_get_timezone_abbreviation(datetime: *mut GDateTime) -> *const c_char2900     pub fn g_date_time_get_timezone_abbreviation(datetime: *mut GDateTime) -> *const c_char;
g_date_time_get_utc_offset(datetime: *mut GDateTime) -> GTimeSpan2901     pub fn g_date_time_get_utc_offset(datetime: *mut GDateTime) -> GTimeSpan;
g_date_time_get_week_numbering_year(datetime: *mut GDateTime) -> c_int2902     pub fn g_date_time_get_week_numbering_year(datetime: *mut GDateTime) -> c_int;
g_date_time_get_week_of_year(datetime: *mut GDateTime) -> c_int2903     pub fn g_date_time_get_week_of_year(datetime: *mut GDateTime) -> c_int;
g_date_time_get_year(datetime: *mut GDateTime) -> c_int2904     pub fn g_date_time_get_year(datetime: *mut GDateTime) -> c_int;
g_date_time_get_ymd( datetime: *mut GDateTime, year: *mut c_int, month: *mut c_int, day: *mut c_int, )2905     pub fn g_date_time_get_ymd(
2906         datetime: *mut GDateTime,
2907         year: *mut c_int,
2908         month: *mut c_int,
2909         day: *mut c_int,
2910     );
g_date_time_hash(datetime: gconstpointer) -> c_uint2911     pub fn g_date_time_hash(datetime: gconstpointer) -> c_uint;
g_date_time_is_daylight_savings(datetime: *mut GDateTime) -> gboolean2912     pub fn g_date_time_is_daylight_savings(datetime: *mut GDateTime) -> gboolean;
g_date_time_ref(datetime: *mut GDateTime) -> *mut GDateTime2913     pub fn g_date_time_ref(datetime: *mut GDateTime) -> *mut GDateTime;
g_date_time_to_local(datetime: *mut GDateTime) -> *mut GDateTime2914     pub fn g_date_time_to_local(datetime: *mut GDateTime) -> *mut GDateTime;
g_date_time_to_timeval(datetime: *mut GDateTime, tv: *mut GTimeVal) -> gboolean2915     pub fn g_date_time_to_timeval(datetime: *mut GDateTime, tv: *mut GTimeVal) -> gboolean;
g_date_time_to_timezone(datetime: *mut GDateTime, tz: *mut GTimeZone) -> *mut GDateTime2916     pub fn g_date_time_to_timezone(datetime: *mut GDateTime, tz: *mut GTimeZone) -> *mut GDateTime;
g_date_time_to_unix(datetime: *mut GDateTime) -> i642917     pub fn g_date_time_to_unix(datetime: *mut GDateTime) -> i64;
g_date_time_to_utc(datetime: *mut GDateTime) -> *mut GDateTime2918     pub fn g_date_time_to_utc(datetime: *mut GDateTime) -> *mut GDateTime;
g_date_time_unref(datetime: *mut GDateTime)2919     pub fn g_date_time_unref(datetime: *mut GDateTime);
2920 
2921     //=========================================================================
2922     // GDir
2923     //=========================================================================
g_dir_close(dir: *mut GDir)2924     pub fn g_dir_close(dir: *mut GDir);
2925     #[cfg(any(windows, feature = "dox"))]
2926     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_dir_read_name_utf8(dir: *mut GDir) -> *const c_char2927     pub fn g_dir_read_name_utf8(dir: *mut GDir) -> *const c_char;
g_dir_read_name(dir: *mut GDir) -> *const c_char2928     pub fn g_dir_read_name(dir: *mut GDir) -> *const c_char;
g_dir_rewind(dir: *mut GDir)2929     pub fn g_dir_rewind(dir: *mut GDir);
g_dir_make_tmp(tmpl: *const c_char, error: *mut *mut GError) -> *mut c_char2930     pub fn g_dir_make_tmp(tmpl: *const c_char, error: *mut *mut GError) -> *mut c_char;
2931     #[cfg(any(windows, feature = "dox"))]
2932     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_dir_open_utf8( path: *const c_char, flags: c_uint, error: *mut *mut GError, ) -> *mut GDir2933     pub fn g_dir_open_utf8(
2934         path: *const c_char,
2935         flags: c_uint,
2936         error: *mut *mut GError,
2937     ) -> *mut GDir;
g_dir_open(path: *const c_char, flags: c_uint, error: *mut *mut GError) -> *mut GDir2938     pub fn g_dir_open(path: *const c_char, flags: c_uint, error: *mut *mut GError) -> *mut GDir;
2939 
2940     //=========================================================================
2941     // GError
2942     //=========================================================================
g_error_get_type() -> GType2943     pub fn g_error_get_type() -> GType;
g_error_new(domain: GQuark, code: c_int, format: *const c_char, ...) -> *mut GError2944     pub fn g_error_new(domain: GQuark, code: c_int, format: *const c_char, ...) -> *mut GError;
g_error_new_literal(domain: GQuark, code: c_int, message: *const c_char) -> *mut GError2945     pub fn g_error_new_literal(domain: GQuark, code: c_int, message: *const c_char) -> *mut GError;
2946     //pub fn g_error_new_valist(domain: GQuark, code: c_int, format: *const c_char, args: /*Unimplemented*/va_list) -> *mut GError;
g_error_copy(error: *const GError) -> *mut GError2947     pub fn g_error_copy(error: *const GError) -> *mut GError;
g_error_free(error: *mut GError)2948     pub fn g_error_free(error: *mut GError);
g_error_matches(error: *const GError, domain: GQuark, code: c_int) -> gboolean2949     pub fn g_error_matches(error: *const GError, domain: GQuark, code: c_int) -> gboolean;
2950 
2951     //=========================================================================
2952     // GHashTable
2953     //=========================================================================
g_hash_table_get_type() -> GType2954     pub fn g_hash_table_get_type() -> GType;
g_hash_table_add(hash_table: *mut GHashTable, key: gpointer) -> gboolean2955     pub fn g_hash_table_add(hash_table: *mut GHashTable, key: gpointer) -> gboolean;
g_hash_table_contains(hash_table: *mut GHashTable, key: gconstpointer) -> gboolean2956     pub fn g_hash_table_contains(hash_table: *mut GHashTable, key: gconstpointer) -> gboolean;
g_hash_table_destroy(hash_table: *mut GHashTable)2957     pub fn g_hash_table_destroy(hash_table: *mut GHashTable);
g_hash_table_find( hash_table: *mut GHashTable, predicate: GHRFunc, user_data: gpointer, ) -> gpointer2958     pub fn g_hash_table_find(
2959         hash_table: *mut GHashTable,
2960         predicate: GHRFunc,
2961         user_data: gpointer,
2962     ) -> gpointer;
g_hash_table_foreach(hash_table: *mut GHashTable, func: GHFunc, user_data: gpointer)2963     pub fn g_hash_table_foreach(hash_table: *mut GHashTable, func: GHFunc, user_data: gpointer);
g_hash_table_foreach_remove( hash_table: *mut GHashTable, func: GHRFunc, user_data: gpointer, ) -> c_uint2964     pub fn g_hash_table_foreach_remove(
2965         hash_table: *mut GHashTable,
2966         func: GHRFunc,
2967         user_data: gpointer,
2968     ) -> c_uint;
g_hash_table_foreach_steal( hash_table: *mut GHashTable, func: GHRFunc, user_data: gpointer, ) -> c_uint2969     pub fn g_hash_table_foreach_steal(
2970         hash_table: *mut GHashTable,
2971         func: GHRFunc,
2972         user_data: gpointer,
2973     ) -> c_uint;
g_hash_table_get_keys(hash_table: *mut GHashTable) -> *mut GList2974     pub fn g_hash_table_get_keys(hash_table: *mut GHashTable) -> *mut GList;
g_hash_table_get_keys_as_array( hash_table: *mut GHashTable, length: *mut c_uint, ) -> *mut gpointer2975     pub fn g_hash_table_get_keys_as_array(
2976         hash_table: *mut GHashTable,
2977         length: *mut c_uint,
2978     ) -> *mut gpointer;
g_hash_table_get_values(hash_table: *mut GHashTable) -> *mut GList2979     pub fn g_hash_table_get_values(hash_table: *mut GHashTable) -> *mut GList;
g_hash_table_insert( hash_table: *mut GHashTable, key: gpointer, value: gpointer, ) -> gboolean2980     pub fn g_hash_table_insert(
2981         hash_table: *mut GHashTable,
2982         key: gpointer,
2983         value: gpointer,
2984     ) -> gboolean;
g_hash_table_lookup(hash_table: *mut GHashTable, key: gconstpointer) -> gpointer2985     pub fn g_hash_table_lookup(hash_table: *mut GHashTable, key: gconstpointer) -> gpointer;
g_hash_table_lookup_extended( hash_table: *mut GHashTable, lookup_key: gconstpointer, orig_key: *mut gpointer, value: *mut gpointer, ) -> gboolean2986     pub fn g_hash_table_lookup_extended(
2987         hash_table: *mut GHashTable,
2988         lookup_key: gconstpointer,
2989         orig_key: *mut gpointer,
2990         value: *mut gpointer,
2991     ) -> gboolean;
g_hash_table_new(hash_func: GHashFunc, key_equal_func: GEqualFunc) -> *mut GHashTable2992     pub fn g_hash_table_new(hash_func: GHashFunc, key_equal_func: GEqualFunc) -> *mut GHashTable;
g_hash_table_new_full( hash_func: GHashFunc, key_equal_func: GEqualFunc, key_destroy_func: GDestroyNotify, value_destroy_func: GDestroyNotify, ) -> *mut GHashTable2993     pub fn g_hash_table_new_full(
2994         hash_func: GHashFunc,
2995         key_equal_func: GEqualFunc,
2996         key_destroy_func: GDestroyNotify,
2997         value_destroy_func: GDestroyNotify,
2998     ) -> *mut GHashTable;
g_hash_table_ref(hash_table: *mut GHashTable) -> *mut GHashTable2999     pub fn g_hash_table_ref(hash_table: *mut GHashTable) -> *mut GHashTable;
g_hash_table_remove(hash_table: *mut GHashTable, key: gconstpointer) -> gboolean3000     pub fn g_hash_table_remove(hash_table: *mut GHashTable, key: gconstpointer) -> gboolean;
g_hash_table_remove_all(hash_table: *mut GHashTable)3001     pub fn g_hash_table_remove_all(hash_table: *mut GHashTable);
g_hash_table_replace( hash_table: *mut GHashTable, key: gpointer, value: gpointer, ) -> gboolean3002     pub fn g_hash_table_replace(
3003         hash_table: *mut GHashTable,
3004         key: gpointer,
3005         value: gpointer,
3006     ) -> gboolean;
g_hash_table_size(hash_table: *mut GHashTable) -> c_uint3007     pub fn g_hash_table_size(hash_table: *mut GHashTable) -> c_uint;
g_hash_table_steal(hash_table: *mut GHashTable, key: gconstpointer) -> gboolean3008     pub fn g_hash_table_steal(hash_table: *mut GHashTable, key: gconstpointer) -> gboolean;
g_hash_table_steal_all(hash_table: *mut GHashTable)3009     pub fn g_hash_table_steal_all(hash_table: *mut GHashTable);
3010     #[cfg(any(feature = "v2_58", feature = "dox"))]
3011     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_hash_table_steal_extended( hash_table: *mut GHashTable, lookup_key: gconstpointer, stolen_key: *mut gpointer, stolen_value: *mut gpointer, ) -> gboolean3012     pub fn g_hash_table_steal_extended(
3013         hash_table: *mut GHashTable,
3014         lookup_key: gconstpointer,
3015         stolen_key: *mut gpointer,
3016         stolen_value: *mut gpointer,
3017     ) -> gboolean;
g_hash_table_unref(hash_table: *mut GHashTable)3018     pub fn g_hash_table_unref(hash_table: *mut GHashTable);
3019 
3020     //=========================================================================
3021     // GHashTableIter
3022     //=========================================================================
g_hash_table_iter_get_hash_table(iter: *mut GHashTableIter) -> *mut GHashTable3023     pub fn g_hash_table_iter_get_hash_table(iter: *mut GHashTableIter) -> *mut GHashTable;
g_hash_table_iter_init(iter: *mut GHashTableIter, hash_table: *mut GHashTable)3024     pub fn g_hash_table_iter_init(iter: *mut GHashTableIter, hash_table: *mut GHashTable);
g_hash_table_iter_next( iter: *mut GHashTableIter, key: *mut gpointer, value: *mut gpointer, ) -> gboolean3025     pub fn g_hash_table_iter_next(
3026         iter: *mut GHashTableIter,
3027         key: *mut gpointer,
3028         value: *mut gpointer,
3029     ) -> gboolean;
g_hash_table_iter_remove(iter: *mut GHashTableIter)3030     pub fn g_hash_table_iter_remove(iter: *mut GHashTableIter);
g_hash_table_iter_replace(iter: *mut GHashTableIter, value: gpointer)3031     pub fn g_hash_table_iter_replace(iter: *mut GHashTableIter, value: gpointer);
g_hash_table_iter_steal(iter: *mut GHashTableIter)3032     pub fn g_hash_table_iter_steal(iter: *mut GHashTableIter);
3033 
3034     //=========================================================================
3035     // GHmac
3036     //=========================================================================
g_hmac_copy(hmac: *const GHmac) -> *mut GHmac3037     pub fn g_hmac_copy(hmac: *const GHmac) -> *mut GHmac;
g_hmac_get_digest(hmac: *mut GHmac, buffer: *mut u8, digest_len: *mut size_t)3038     pub fn g_hmac_get_digest(hmac: *mut GHmac, buffer: *mut u8, digest_len: *mut size_t);
g_hmac_get_string(hmac: *mut GHmac) -> *const c_char3039     pub fn g_hmac_get_string(hmac: *mut GHmac) -> *const c_char;
g_hmac_ref(hmac: *mut GHmac) -> *mut GHmac3040     pub fn g_hmac_ref(hmac: *mut GHmac) -> *mut GHmac;
g_hmac_unref(hmac: *mut GHmac)3041     pub fn g_hmac_unref(hmac: *mut GHmac);
g_hmac_update(hmac: *mut GHmac, data: *const u8, length: ssize_t)3042     pub fn g_hmac_update(hmac: *mut GHmac, data: *const u8, length: ssize_t);
g_hmac_new(digest_type: GChecksumType, key: *const u8, key_len: size_t) -> *mut GHmac3043     pub fn g_hmac_new(digest_type: GChecksumType, key: *const u8, key_len: size_t) -> *mut GHmac;
3044 
3045     //=========================================================================
3046     // GHook
3047     //=========================================================================
g_hook_compare_ids(new_hook: *mut GHook, sibling: *mut GHook) -> c_int3048     pub fn g_hook_compare_ids(new_hook: *mut GHook, sibling: *mut GHook) -> c_int;
g_hook_alloc(hook_list: *mut GHookList) -> *mut GHook3049     pub fn g_hook_alloc(hook_list: *mut GHookList) -> *mut GHook;
g_hook_destroy(hook_list: *mut GHookList, hook_id: c_ulong) -> gboolean3050     pub fn g_hook_destroy(hook_list: *mut GHookList, hook_id: c_ulong) -> gboolean;
g_hook_destroy_link(hook_list: *mut GHookList, hook: *mut GHook)3051     pub fn g_hook_destroy_link(hook_list: *mut GHookList, hook: *mut GHook);
g_hook_find( hook_list: *mut GHookList, need_valids: gboolean, func: GHookFindFunc, data: gpointer, ) -> *mut GHook3052     pub fn g_hook_find(
3053         hook_list: *mut GHookList,
3054         need_valids: gboolean,
3055         func: GHookFindFunc,
3056         data: gpointer,
3057     ) -> *mut GHook;
g_hook_find_data( hook_list: *mut GHookList, need_valids: gboolean, data: gpointer, ) -> *mut GHook3058     pub fn g_hook_find_data(
3059         hook_list: *mut GHookList,
3060         need_valids: gboolean,
3061         data: gpointer,
3062     ) -> *mut GHook;
g_hook_find_func( hook_list: *mut GHookList, need_valids: gboolean, func: gpointer, ) -> *mut GHook3063     pub fn g_hook_find_func(
3064         hook_list: *mut GHookList,
3065         need_valids: gboolean,
3066         func: gpointer,
3067     ) -> *mut GHook;
g_hook_find_func_data( hook_list: *mut GHookList, need_valids: gboolean, func: gpointer, data: gpointer, ) -> *mut GHook3068     pub fn g_hook_find_func_data(
3069         hook_list: *mut GHookList,
3070         need_valids: gboolean,
3071         func: gpointer,
3072         data: gpointer,
3073     ) -> *mut GHook;
g_hook_first_valid(hook_list: *mut GHookList, may_be_in_call: gboolean) -> *mut GHook3074     pub fn g_hook_first_valid(hook_list: *mut GHookList, may_be_in_call: gboolean) -> *mut GHook;
g_hook_free(hook_list: *mut GHookList, hook: *mut GHook)3075     pub fn g_hook_free(hook_list: *mut GHookList, hook: *mut GHook);
g_hook_get(hook_list: *mut GHookList, hook_id: c_ulong) -> *mut GHook3076     pub fn g_hook_get(hook_list: *mut GHookList, hook_id: c_ulong) -> *mut GHook;
g_hook_insert_before(hook_list: *mut GHookList, sibling: *mut GHook, hook: *mut GHook)3077     pub fn g_hook_insert_before(hook_list: *mut GHookList, sibling: *mut GHook, hook: *mut GHook);
g_hook_insert_sorted( hook_list: *mut GHookList, hook: *mut GHook, func: GHookCompareFunc, )3078     pub fn g_hook_insert_sorted(
3079         hook_list: *mut GHookList,
3080         hook: *mut GHook,
3081         func: GHookCompareFunc,
3082     );
g_hook_next_valid( hook_list: *mut GHookList, hook: *mut GHook, may_be_in_call: gboolean, ) -> *mut GHook3083     pub fn g_hook_next_valid(
3084         hook_list: *mut GHookList,
3085         hook: *mut GHook,
3086         may_be_in_call: gboolean,
3087     ) -> *mut GHook;
g_hook_prepend(hook_list: *mut GHookList, hook: *mut GHook)3088     pub fn g_hook_prepend(hook_list: *mut GHookList, hook: *mut GHook);
g_hook_ref(hook_list: *mut GHookList, hook: *mut GHook) -> *mut GHook3089     pub fn g_hook_ref(hook_list: *mut GHookList, hook: *mut GHook) -> *mut GHook;
g_hook_unref(hook_list: *mut GHookList, hook: *mut GHook)3090     pub fn g_hook_unref(hook_list: *mut GHookList, hook: *mut GHook);
3091 
3092     //=========================================================================
3093     // GHookList
3094     //=========================================================================
g_hook_list_clear(hook_list: *mut GHookList)3095     pub fn g_hook_list_clear(hook_list: *mut GHookList);
g_hook_list_init(hook_list: *mut GHookList, hook_size: c_uint)3096     pub fn g_hook_list_init(hook_list: *mut GHookList, hook_size: c_uint);
g_hook_list_invoke(hook_list: *mut GHookList, may_recurse: gboolean)3097     pub fn g_hook_list_invoke(hook_list: *mut GHookList, may_recurse: gboolean);
g_hook_list_invoke_check(hook_list: *mut GHookList, may_recurse: gboolean)3098     pub fn g_hook_list_invoke_check(hook_list: *mut GHookList, may_recurse: gboolean);
g_hook_list_marshal( hook_list: *mut GHookList, may_recurse: gboolean, marshaller: GHookMarshaller, marshal_data: gpointer, )3099     pub fn g_hook_list_marshal(
3100         hook_list: *mut GHookList,
3101         may_recurse: gboolean,
3102         marshaller: GHookMarshaller,
3103         marshal_data: gpointer,
3104     );
g_hook_list_marshal_check( hook_list: *mut GHookList, may_recurse: gboolean, marshaller: GHookCheckMarshaller, marshal_data: gpointer, )3105     pub fn g_hook_list_marshal_check(
3106         hook_list: *mut GHookList,
3107         may_recurse: gboolean,
3108         marshaller: GHookCheckMarshaller,
3109         marshal_data: gpointer,
3110     );
3111 
3112     //=========================================================================
3113     // GIConv
3114     //=========================================================================
g_iconv_close(converter: GIConv) -> c_int3115     pub fn g_iconv_close(converter: GIConv) -> c_int;
g_iconv_open(to_codeset: *const c_char, from_codeset: *const c_char) -> GIConv3116     pub fn g_iconv_open(to_codeset: *const c_char, from_codeset: *const c_char) -> GIConv;
3117 
3118     //=========================================================================
3119     // GIOChannel
3120     //=========================================================================
g_io_channel_get_type() -> GType3121     pub fn g_io_channel_get_type() -> GType;
3122     #[cfg(any(windows, feature = "dox"))]
3123     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_io_channel_new_file_utf8( filename: *const c_char, mode: *const c_char, error: *mut *mut GError, ) -> *mut GIOChannel3124     pub fn g_io_channel_new_file_utf8(
3125         filename: *const c_char,
3126         mode: *const c_char,
3127         error: *mut *mut GError,
3128     ) -> *mut GIOChannel;
g_io_channel_new_file( filename: *const c_char, mode: *const c_char, error: *mut *mut GError, ) -> *mut GIOChannel3129     pub fn g_io_channel_new_file(
3130         filename: *const c_char,
3131         mode: *const c_char,
3132         error: *mut *mut GError,
3133     ) -> *mut GIOChannel;
g_io_channel_unix_new(fd: c_int) -> *mut GIOChannel3134     pub fn g_io_channel_unix_new(fd: c_int) -> *mut GIOChannel;
g_io_channel_close(channel: *mut GIOChannel)3135     pub fn g_io_channel_close(channel: *mut GIOChannel);
g_io_channel_flush(channel: *mut GIOChannel, error: *mut *mut GError) -> GIOStatus3136     pub fn g_io_channel_flush(channel: *mut GIOChannel, error: *mut *mut GError) -> GIOStatus;
g_io_channel_get_buffer_condition(channel: *mut GIOChannel) -> GIOCondition3137     pub fn g_io_channel_get_buffer_condition(channel: *mut GIOChannel) -> GIOCondition;
g_io_channel_get_buffer_size(channel: *mut GIOChannel) -> size_t3138     pub fn g_io_channel_get_buffer_size(channel: *mut GIOChannel) -> size_t;
g_io_channel_get_buffered(channel: *mut GIOChannel) -> gboolean3139     pub fn g_io_channel_get_buffered(channel: *mut GIOChannel) -> gboolean;
g_io_channel_get_close_on_unref(channel: *mut GIOChannel) -> gboolean3140     pub fn g_io_channel_get_close_on_unref(channel: *mut GIOChannel) -> gboolean;
g_io_channel_get_encoding(channel: *mut GIOChannel) -> *const c_char3141     pub fn g_io_channel_get_encoding(channel: *mut GIOChannel) -> *const c_char;
g_io_channel_get_flags(channel: *mut GIOChannel) -> GIOFlags3142     pub fn g_io_channel_get_flags(channel: *mut GIOChannel) -> GIOFlags;
g_io_channel_get_line_term( channel: *mut GIOChannel, length: *mut c_int, ) -> *const c_char3143     pub fn g_io_channel_get_line_term(
3144         channel: *mut GIOChannel,
3145         length: *mut c_int,
3146     ) -> *const c_char;
g_io_channel_init(channel: *mut GIOChannel)3147     pub fn g_io_channel_init(channel: *mut GIOChannel);
g_io_channel_read( channel: *mut GIOChannel, buf: *mut c_char, count: size_t, bytes_read: *mut size_t, ) -> GIOError3148     pub fn g_io_channel_read(
3149         channel: *mut GIOChannel,
3150         buf: *mut c_char,
3151         count: size_t,
3152         bytes_read: *mut size_t,
3153     ) -> GIOError;
g_io_channel_read_chars( channel: *mut GIOChannel, buf: *mut u8, count: size_t, bytes_read: *mut size_t, error: *mut *mut GError, ) -> GIOStatus3154     pub fn g_io_channel_read_chars(
3155         channel: *mut GIOChannel,
3156         buf: *mut u8,
3157         count: size_t,
3158         bytes_read: *mut size_t,
3159         error: *mut *mut GError,
3160     ) -> GIOStatus;
g_io_channel_read_line( channel: *mut GIOChannel, str_return: *mut *mut c_char, length: *mut size_t, terminator_pos: *mut size_t, error: *mut *mut GError, ) -> GIOStatus3161     pub fn g_io_channel_read_line(
3162         channel: *mut GIOChannel,
3163         str_return: *mut *mut c_char,
3164         length: *mut size_t,
3165         terminator_pos: *mut size_t,
3166         error: *mut *mut GError,
3167     ) -> GIOStatus;
g_io_channel_read_line_string( channel: *mut GIOChannel, buffer: *mut GString, terminator_pos: *mut size_t, error: *mut *mut GError, ) -> GIOStatus3168     pub fn g_io_channel_read_line_string(
3169         channel: *mut GIOChannel,
3170         buffer: *mut GString,
3171         terminator_pos: *mut size_t,
3172         error: *mut *mut GError,
3173     ) -> GIOStatus;
g_io_channel_read_to_end( channel: *mut GIOChannel, str_return: *mut *mut u8, length: *mut size_t, error: *mut *mut GError, ) -> GIOStatus3174     pub fn g_io_channel_read_to_end(
3175         channel: *mut GIOChannel,
3176         str_return: *mut *mut u8,
3177         length: *mut size_t,
3178         error: *mut *mut GError,
3179     ) -> GIOStatus;
g_io_channel_read_unichar( channel: *mut GIOChannel, thechar: *mut u32, error: *mut *mut GError, ) -> GIOStatus3180     pub fn g_io_channel_read_unichar(
3181         channel: *mut GIOChannel,
3182         thechar: *mut u32,
3183         error: *mut *mut GError,
3184     ) -> GIOStatus;
g_io_channel_ref(channel: *mut GIOChannel) -> *mut GIOChannel3185     pub fn g_io_channel_ref(channel: *mut GIOChannel) -> *mut GIOChannel;
g_io_channel_seek(channel: *mut GIOChannel, offset: i64, type_: GSeekType) -> GIOError3186     pub fn g_io_channel_seek(channel: *mut GIOChannel, offset: i64, type_: GSeekType) -> GIOError;
g_io_channel_seek_position( channel: *mut GIOChannel, offset: i64, type_: GSeekType, error: *mut *mut GError, ) -> GIOStatus3187     pub fn g_io_channel_seek_position(
3188         channel: *mut GIOChannel,
3189         offset: i64,
3190         type_: GSeekType,
3191         error: *mut *mut GError,
3192     ) -> GIOStatus;
g_io_channel_set_buffer_size(channel: *mut GIOChannel, size: size_t)3193     pub fn g_io_channel_set_buffer_size(channel: *mut GIOChannel, size: size_t);
g_io_channel_set_buffered(channel: *mut GIOChannel, buffered: gboolean)3194     pub fn g_io_channel_set_buffered(channel: *mut GIOChannel, buffered: gboolean);
g_io_channel_set_close_on_unref(channel: *mut GIOChannel, do_close: gboolean)3195     pub fn g_io_channel_set_close_on_unref(channel: *mut GIOChannel, do_close: gboolean);
g_io_channel_set_encoding( channel: *mut GIOChannel, encoding: *const c_char, error: *mut *mut GError, ) -> GIOStatus3196     pub fn g_io_channel_set_encoding(
3197         channel: *mut GIOChannel,
3198         encoding: *const c_char,
3199         error: *mut *mut GError,
3200     ) -> GIOStatus;
g_io_channel_set_flags( channel: *mut GIOChannel, flags: GIOFlags, error: *mut *mut GError, ) -> GIOStatus3201     pub fn g_io_channel_set_flags(
3202         channel: *mut GIOChannel,
3203         flags: GIOFlags,
3204         error: *mut *mut GError,
3205     ) -> GIOStatus;
g_io_channel_set_line_term( channel: *mut GIOChannel, line_term: *const c_char, length: c_int, )3206     pub fn g_io_channel_set_line_term(
3207         channel: *mut GIOChannel,
3208         line_term: *const c_char,
3209         length: c_int,
3210     );
g_io_channel_shutdown( channel: *mut GIOChannel, flush: gboolean, error: *mut *mut GError, ) -> GIOStatus3211     pub fn g_io_channel_shutdown(
3212         channel: *mut GIOChannel,
3213         flush: gboolean,
3214         error: *mut *mut GError,
3215     ) -> GIOStatus;
g_io_channel_unix_get_fd(channel: *mut GIOChannel) -> c_int3216     pub fn g_io_channel_unix_get_fd(channel: *mut GIOChannel) -> c_int;
g_io_channel_unref(channel: *mut GIOChannel)3217     pub fn g_io_channel_unref(channel: *mut GIOChannel);
g_io_channel_write( channel: *mut GIOChannel, buf: *const c_char, count: size_t, bytes_written: *mut size_t, ) -> GIOError3218     pub fn g_io_channel_write(
3219         channel: *mut GIOChannel,
3220         buf: *const c_char,
3221         count: size_t,
3222         bytes_written: *mut size_t,
3223     ) -> GIOError;
g_io_channel_write_chars( channel: *mut GIOChannel, buf: *const u8, count: ssize_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> GIOStatus3224     pub fn g_io_channel_write_chars(
3225         channel: *mut GIOChannel,
3226         buf: *const u8,
3227         count: ssize_t,
3228         bytes_written: *mut size_t,
3229         error: *mut *mut GError,
3230     ) -> GIOStatus;
g_io_channel_write_unichar( channel: *mut GIOChannel, thechar: u32, error: *mut *mut GError, ) -> GIOStatus3231     pub fn g_io_channel_write_unichar(
3232         channel: *mut GIOChannel,
3233         thechar: u32,
3234         error: *mut *mut GError,
3235     ) -> GIOStatus;
g_io_channel_error_from_errno(en: c_int) -> GIOChannelError3236     pub fn g_io_channel_error_from_errno(en: c_int) -> GIOChannelError;
g_io_channel_error_quark() -> GQuark3237     pub fn g_io_channel_error_quark() -> GQuark;
3238 
3239     //=========================================================================
3240     // GKeyFile
3241     //=========================================================================
g_key_file_get_type() -> GType3242     pub fn g_key_file_get_type() -> GType;
g_key_file_new() -> *mut GKeyFile3243     pub fn g_key_file_new() -> *mut GKeyFile;
g_key_file_free(key_file: *mut GKeyFile)3244     pub fn g_key_file_free(key_file: *mut GKeyFile);
g_key_file_get_boolean( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> gboolean3245     pub fn g_key_file_get_boolean(
3246         key_file: *mut GKeyFile,
3247         group_name: *const c_char,
3248         key: *const c_char,
3249         error: *mut *mut GError,
3250     ) -> gboolean;
g_key_file_get_boolean_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, length: *mut size_t, error: *mut *mut GError, ) -> *mut gboolean3251     pub fn g_key_file_get_boolean_list(
3252         key_file: *mut GKeyFile,
3253         group_name: *const c_char,
3254         key: *const c_char,
3255         length: *mut size_t,
3256         error: *mut *mut GError,
3257     ) -> *mut gboolean;
g_key_file_get_comment( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> *mut c_char3258     pub fn g_key_file_get_comment(
3259         key_file: *mut GKeyFile,
3260         group_name: *const c_char,
3261         key: *const c_char,
3262         error: *mut *mut GError,
3263     ) -> *mut c_char;
g_key_file_get_double( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> c_double3264     pub fn g_key_file_get_double(
3265         key_file: *mut GKeyFile,
3266         group_name: *const c_char,
3267         key: *const c_char,
3268         error: *mut *mut GError,
3269     ) -> c_double;
g_key_file_get_double_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, length: *mut size_t, error: *mut *mut GError, ) -> *mut c_double3270     pub fn g_key_file_get_double_list(
3271         key_file: *mut GKeyFile,
3272         group_name: *const c_char,
3273         key: *const c_char,
3274         length: *mut size_t,
3275         error: *mut *mut GError,
3276     ) -> *mut c_double;
g_key_file_get_groups(key_file: *mut GKeyFile, length: *mut size_t) -> *mut *mut c_char3277     pub fn g_key_file_get_groups(key_file: *mut GKeyFile, length: *mut size_t) -> *mut *mut c_char;
g_key_file_get_int64( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> i643278     pub fn g_key_file_get_int64(
3279         key_file: *mut GKeyFile,
3280         group_name: *const c_char,
3281         key: *const c_char,
3282         error: *mut *mut GError,
3283     ) -> i64;
g_key_file_get_integer( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> c_int3284     pub fn g_key_file_get_integer(
3285         key_file: *mut GKeyFile,
3286         group_name: *const c_char,
3287         key: *const c_char,
3288         error: *mut *mut GError,
3289     ) -> c_int;
g_key_file_get_integer_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, length: *mut size_t, error: *mut *mut GError, ) -> *mut c_int3290     pub fn g_key_file_get_integer_list(
3291         key_file: *mut GKeyFile,
3292         group_name: *const c_char,
3293         key: *const c_char,
3294         length: *mut size_t,
3295         error: *mut *mut GError,
3296     ) -> *mut c_int;
g_key_file_get_keys( key_file: *mut GKeyFile, group_name: *const c_char, length: *mut size_t, error: *mut *mut GError, ) -> *mut *mut c_char3297     pub fn g_key_file_get_keys(
3298         key_file: *mut GKeyFile,
3299         group_name: *const c_char,
3300         length: *mut size_t,
3301         error: *mut *mut GError,
3302     ) -> *mut *mut c_char;
3303     #[cfg(any(feature = "v2_56", feature = "dox"))]
3304     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_56")))]
g_key_file_get_locale_for_key( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, locale: *const c_char, ) -> *mut c_char3305     pub fn g_key_file_get_locale_for_key(
3306         key_file: *mut GKeyFile,
3307         group_name: *const c_char,
3308         key: *const c_char,
3309         locale: *const c_char,
3310     ) -> *mut c_char;
g_key_file_get_locale_string( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, locale: *const c_char, error: *mut *mut GError, ) -> *mut c_char3311     pub fn g_key_file_get_locale_string(
3312         key_file: *mut GKeyFile,
3313         group_name: *const c_char,
3314         key: *const c_char,
3315         locale: *const c_char,
3316         error: *mut *mut GError,
3317     ) -> *mut c_char;
g_key_file_get_locale_string_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, locale: *const c_char, length: *mut size_t, error: *mut *mut GError, ) -> *mut *mut c_char3318     pub fn g_key_file_get_locale_string_list(
3319         key_file: *mut GKeyFile,
3320         group_name: *const c_char,
3321         key: *const c_char,
3322         locale: *const c_char,
3323         length: *mut size_t,
3324         error: *mut *mut GError,
3325     ) -> *mut *mut c_char;
g_key_file_get_start_group(key_file: *mut GKeyFile) -> *mut c_char3326     pub fn g_key_file_get_start_group(key_file: *mut GKeyFile) -> *mut c_char;
g_key_file_get_string( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> *mut c_char3327     pub fn g_key_file_get_string(
3328         key_file: *mut GKeyFile,
3329         group_name: *const c_char,
3330         key: *const c_char,
3331         error: *mut *mut GError,
3332     ) -> *mut c_char;
g_key_file_get_string_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, length: *mut size_t, error: *mut *mut GError, ) -> *mut *mut c_char3333     pub fn g_key_file_get_string_list(
3334         key_file: *mut GKeyFile,
3335         group_name: *const c_char,
3336         key: *const c_char,
3337         length: *mut size_t,
3338         error: *mut *mut GError,
3339     ) -> *mut *mut c_char;
g_key_file_get_uint64( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> u643340     pub fn g_key_file_get_uint64(
3341         key_file: *mut GKeyFile,
3342         group_name: *const c_char,
3343         key: *const c_char,
3344         error: *mut *mut GError,
3345     ) -> u64;
g_key_file_get_value( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> *mut c_char3346     pub fn g_key_file_get_value(
3347         key_file: *mut GKeyFile,
3348         group_name: *const c_char,
3349         key: *const c_char,
3350         error: *mut *mut GError,
3351     ) -> *mut c_char;
g_key_file_has_group(key_file: *mut GKeyFile, group_name: *const c_char) -> gboolean3352     pub fn g_key_file_has_group(key_file: *mut GKeyFile, group_name: *const c_char) -> gboolean;
g_key_file_has_key( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> gboolean3353     pub fn g_key_file_has_key(
3354         key_file: *mut GKeyFile,
3355         group_name: *const c_char,
3356         key: *const c_char,
3357         error: *mut *mut GError,
3358     ) -> gboolean;
3359     #[cfg(any(feature = "v2_50", feature = "dox"))]
3360     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_key_file_load_from_bytes( key_file: *mut GKeyFile, bytes: *mut GBytes, flags: GKeyFileFlags, error: *mut *mut GError, ) -> gboolean3361     pub fn g_key_file_load_from_bytes(
3362         key_file: *mut GKeyFile,
3363         bytes: *mut GBytes,
3364         flags: GKeyFileFlags,
3365         error: *mut *mut GError,
3366     ) -> gboolean;
g_key_file_load_from_data( key_file: *mut GKeyFile, data: *const c_char, length: size_t, flags: GKeyFileFlags, error: *mut *mut GError, ) -> gboolean3367     pub fn g_key_file_load_from_data(
3368         key_file: *mut GKeyFile,
3369         data: *const c_char,
3370         length: size_t,
3371         flags: GKeyFileFlags,
3372         error: *mut *mut GError,
3373     ) -> gboolean;
g_key_file_load_from_data_dirs( key_file: *mut GKeyFile, file: *const c_char, full_path: *mut *mut c_char, flags: GKeyFileFlags, error: *mut *mut GError, ) -> gboolean3374     pub fn g_key_file_load_from_data_dirs(
3375         key_file: *mut GKeyFile,
3376         file: *const c_char,
3377         full_path: *mut *mut c_char,
3378         flags: GKeyFileFlags,
3379         error: *mut *mut GError,
3380     ) -> gboolean;
g_key_file_load_from_dirs( key_file: *mut GKeyFile, file: *const c_char, search_dirs: *mut *const c_char, full_path: *mut *mut c_char, flags: GKeyFileFlags, error: *mut *mut GError, ) -> gboolean3381     pub fn g_key_file_load_from_dirs(
3382         key_file: *mut GKeyFile,
3383         file: *const c_char,
3384         search_dirs: *mut *const c_char,
3385         full_path: *mut *mut c_char,
3386         flags: GKeyFileFlags,
3387         error: *mut *mut GError,
3388     ) -> gboolean;
g_key_file_load_from_file( key_file: *mut GKeyFile, file: *const c_char, flags: GKeyFileFlags, error: *mut *mut GError, ) -> gboolean3389     pub fn g_key_file_load_from_file(
3390         key_file: *mut GKeyFile,
3391         file: *const c_char,
3392         flags: GKeyFileFlags,
3393         error: *mut *mut GError,
3394     ) -> gboolean;
g_key_file_ref(key_file: *mut GKeyFile) -> *mut GKeyFile3395     pub fn g_key_file_ref(key_file: *mut GKeyFile) -> *mut GKeyFile;
g_key_file_remove_comment( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> gboolean3396     pub fn g_key_file_remove_comment(
3397         key_file: *mut GKeyFile,
3398         group_name: *const c_char,
3399         key: *const c_char,
3400         error: *mut *mut GError,
3401     ) -> gboolean;
g_key_file_remove_group( key_file: *mut GKeyFile, group_name: *const c_char, error: *mut *mut GError, ) -> gboolean3402     pub fn g_key_file_remove_group(
3403         key_file: *mut GKeyFile,
3404         group_name: *const c_char,
3405         error: *mut *mut GError,
3406     ) -> gboolean;
g_key_file_remove_key( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, error: *mut *mut GError, ) -> gboolean3407     pub fn g_key_file_remove_key(
3408         key_file: *mut GKeyFile,
3409         group_name: *const c_char,
3410         key: *const c_char,
3411         error: *mut *mut GError,
3412     ) -> gboolean;
g_key_file_save_to_file( key_file: *mut GKeyFile, filename: *const c_char, error: *mut *mut GError, ) -> gboolean3413     pub fn g_key_file_save_to_file(
3414         key_file: *mut GKeyFile,
3415         filename: *const c_char,
3416         error: *mut *mut GError,
3417     ) -> gboolean;
g_key_file_set_boolean( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, value: gboolean, )3418     pub fn g_key_file_set_boolean(
3419         key_file: *mut GKeyFile,
3420         group_name: *const c_char,
3421         key: *const c_char,
3422         value: gboolean,
3423     );
g_key_file_set_boolean_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, list: *mut gboolean, length: size_t, )3424     pub fn g_key_file_set_boolean_list(
3425         key_file: *mut GKeyFile,
3426         group_name: *const c_char,
3427         key: *const c_char,
3428         list: *mut gboolean,
3429         length: size_t,
3430     );
g_key_file_set_comment( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, comment: *const c_char, error: *mut *mut GError, ) -> gboolean3431     pub fn g_key_file_set_comment(
3432         key_file: *mut GKeyFile,
3433         group_name: *const c_char,
3434         key: *const c_char,
3435         comment: *const c_char,
3436         error: *mut *mut GError,
3437     ) -> gboolean;
g_key_file_set_double( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, value: c_double, )3438     pub fn g_key_file_set_double(
3439         key_file: *mut GKeyFile,
3440         group_name: *const c_char,
3441         key: *const c_char,
3442         value: c_double,
3443     );
g_key_file_set_double_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, list: *mut c_double, length: size_t, )3444     pub fn g_key_file_set_double_list(
3445         key_file: *mut GKeyFile,
3446         group_name: *const c_char,
3447         key: *const c_char,
3448         list: *mut c_double,
3449         length: size_t,
3450     );
g_key_file_set_int64( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, value: i64, )3451     pub fn g_key_file_set_int64(
3452         key_file: *mut GKeyFile,
3453         group_name: *const c_char,
3454         key: *const c_char,
3455         value: i64,
3456     );
g_key_file_set_integer( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, value: c_int, )3457     pub fn g_key_file_set_integer(
3458         key_file: *mut GKeyFile,
3459         group_name: *const c_char,
3460         key: *const c_char,
3461         value: c_int,
3462     );
g_key_file_set_integer_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, list: *mut c_int, length: size_t, )3463     pub fn g_key_file_set_integer_list(
3464         key_file: *mut GKeyFile,
3465         group_name: *const c_char,
3466         key: *const c_char,
3467         list: *mut c_int,
3468         length: size_t,
3469     );
g_key_file_set_list_separator(key_file: *mut GKeyFile, separator: c_char)3470     pub fn g_key_file_set_list_separator(key_file: *mut GKeyFile, separator: c_char);
g_key_file_set_locale_string( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, locale: *const c_char, string: *const c_char, )3471     pub fn g_key_file_set_locale_string(
3472         key_file: *mut GKeyFile,
3473         group_name: *const c_char,
3474         key: *const c_char,
3475         locale: *const c_char,
3476         string: *const c_char,
3477     );
g_key_file_set_locale_string_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, locale: *const c_char, list: *const *const c_char, length: size_t, )3478     pub fn g_key_file_set_locale_string_list(
3479         key_file: *mut GKeyFile,
3480         group_name: *const c_char,
3481         key: *const c_char,
3482         locale: *const c_char,
3483         list: *const *const c_char,
3484         length: size_t,
3485     );
g_key_file_set_string( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, string: *const c_char, )3486     pub fn g_key_file_set_string(
3487         key_file: *mut GKeyFile,
3488         group_name: *const c_char,
3489         key: *const c_char,
3490         string: *const c_char,
3491     );
g_key_file_set_string_list( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, list: *const *const c_char, length: size_t, )3492     pub fn g_key_file_set_string_list(
3493         key_file: *mut GKeyFile,
3494         group_name: *const c_char,
3495         key: *const c_char,
3496         list: *const *const c_char,
3497         length: size_t,
3498     );
g_key_file_set_uint64( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, value: u64, )3499     pub fn g_key_file_set_uint64(
3500         key_file: *mut GKeyFile,
3501         group_name: *const c_char,
3502         key: *const c_char,
3503         value: u64,
3504     );
g_key_file_set_value( key_file: *mut GKeyFile, group_name: *const c_char, key: *const c_char, value: *const c_char, )3505     pub fn g_key_file_set_value(
3506         key_file: *mut GKeyFile,
3507         group_name: *const c_char,
3508         key: *const c_char,
3509         value: *const c_char,
3510     );
g_key_file_to_data( key_file: *mut GKeyFile, length: *mut size_t, error: *mut *mut GError, ) -> *mut c_char3511     pub fn g_key_file_to_data(
3512         key_file: *mut GKeyFile,
3513         length: *mut size_t,
3514         error: *mut *mut GError,
3515     ) -> *mut c_char;
g_key_file_unref(key_file: *mut GKeyFile)3516     pub fn g_key_file_unref(key_file: *mut GKeyFile);
g_key_file_error_quark() -> GQuark3517     pub fn g_key_file_error_quark() -> GQuark;
3518 
3519     //=========================================================================
3520     // GList
3521     //=========================================================================
g_list_alloc() -> *mut GList3522     pub fn g_list_alloc() -> *mut GList;
g_list_append(list: *mut GList, data: gpointer) -> *mut GList3523     pub fn g_list_append(list: *mut GList, data: gpointer) -> *mut GList;
g_list_concat(list1: *mut GList, list2: *mut GList) -> *mut GList3524     pub fn g_list_concat(list1: *mut GList, list2: *mut GList) -> *mut GList;
g_list_copy(list: *mut GList) -> *mut GList3525     pub fn g_list_copy(list: *mut GList) -> *mut GList;
g_list_copy_deep(list: *mut GList, func: GCopyFunc, user_data: gpointer) -> *mut GList3526     pub fn g_list_copy_deep(list: *mut GList, func: GCopyFunc, user_data: gpointer) -> *mut GList;
g_list_delete_link(list: *mut GList, link_: *mut GList) -> *mut GList3527     pub fn g_list_delete_link(list: *mut GList, link_: *mut GList) -> *mut GList;
g_list_find(list: *mut GList, data: gconstpointer) -> *mut GList3528     pub fn g_list_find(list: *mut GList, data: gconstpointer) -> *mut GList;
g_list_find_custom( list: *mut GList, data: gconstpointer, func: GCompareFunc, ) -> *mut GList3529     pub fn g_list_find_custom(
3530         list: *mut GList,
3531         data: gconstpointer,
3532         func: GCompareFunc,
3533     ) -> *mut GList;
g_list_first(list: *mut GList) -> *mut GList3534     pub fn g_list_first(list: *mut GList) -> *mut GList;
g_list_foreach(list: *mut GList, func: GFunc, user_data: gpointer)3535     pub fn g_list_foreach(list: *mut GList, func: GFunc, user_data: gpointer);
g_list_free(list: *mut GList)3536     pub fn g_list_free(list: *mut GList);
g_list_free_1(list: *mut GList)3537     pub fn g_list_free_1(list: *mut GList);
g_list_free_full(list: *mut GList, free_func: GDestroyNotify)3538     pub fn g_list_free_full(list: *mut GList, free_func: GDestroyNotify);
g_list_index(list: *mut GList, data: gconstpointer) -> c_int3539     pub fn g_list_index(list: *mut GList, data: gconstpointer) -> c_int;
g_list_insert(list: *mut GList, data: gpointer, position: c_int) -> *mut GList3540     pub fn g_list_insert(list: *mut GList, data: gpointer, position: c_int) -> *mut GList;
g_list_insert_before( list: *mut GList, sibling: *mut GList, data: gpointer, ) -> *mut GList3541     pub fn g_list_insert_before(
3542         list: *mut GList,
3543         sibling: *mut GList,
3544         data: gpointer,
3545     ) -> *mut GList;
3546     #[cfg(any(feature = "v2_62", feature = "dox"))]
3547     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_list_insert_before_link( list: *mut GList, sibling: *mut GList, link_: *mut GList, ) -> *mut GList3548     pub fn g_list_insert_before_link(
3549         list: *mut GList,
3550         sibling: *mut GList,
3551         link_: *mut GList,
3552     ) -> *mut GList;
g_list_insert_sorted(list: *mut GList, data: gpointer, func: GCompareFunc) -> *mut GList3553     pub fn g_list_insert_sorted(list: *mut GList, data: gpointer, func: GCompareFunc)
3554         -> *mut GList;
g_list_insert_sorted_with_data( list: *mut GList, data: gpointer, func: GCompareDataFunc, user_data: gpointer, ) -> *mut GList3555     pub fn g_list_insert_sorted_with_data(
3556         list: *mut GList,
3557         data: gpointer,
3558         func: GCompareDataFunc,
3559         user_data: gpointer,
3560     ) -> *mut GList;
g_list_last(list: *mut GList) -> *mut GList3561     pub fn g_list_last(list: *mut GList) -> *mut GList;
g_list_length(list: *mut GList) -> c_uint3562     pub fn g_list_length(list: *mut GList) -> c_uint;
g_list_nth(list: *mut GList, n: c_uint) -> *mut GList3563     pub fn g_list_nth(list: *mut GList, n: c_uint) -> *mut GList;
g_list_nth_data(list: *mut GList, n: c_uint) -> gpointer3564     pub fn g_list_nth_data(list: *mut GList, n: c_uint) -> gpointer;
g_list_nth_prev(list: *mut GList, n: c_uint) -> *mut GList3565     pub fn g_list_nth_prev(list: *mut GList, n: c_uint) -> *mut GList;
g_list_position(list: *mut GList, llink: *mut GList) -> c_int3566     pub fn g_list_position(list: *mut GList, llink: *mut GList) -> c_int;
g_list_prepend(list: *mut GList, data: gpointer) -> *mut GList3567     pub fn g_list_prepend(list: *mut GList, data: gpointer) -> *mut GList;
g_list_remove(list: *mut GList, data: gconstpointer) -> *mut GList3568     pub fn g_list_remove(list: *mut GList, data: gconstpointer) -> *mut GList;
g_list_remove_all(list: *mut GList, data: gconstpointer) -> *mut GList3569     pub fn g_list_remove_all(list: *mut GList, data: gconstpointer) -> *mut GList;
g_list_remove_link(list: *mut GList, llink: *mut GList) -> *mut GList3570     pub fn g_list_remove_link(list: *mut GList, llink: *mut GList) -> *mut GList;
g_list_reverse(list: *mut GList) -> *mut GList3571     pub fn g_list_reverse(list: *mut GList) -> *mut GList;
g_list_sort(list: *mut GList, compare_func: GCompareFunc) -> *mut GList3572     pub fn g_list_sort(list: *mut GList, compare_func: GCompareFunc) -> *mut GList;
g_list_sort_with_data( list: *mut GList, compare_func: GCompareDataFunc, user_data: gpointer, ) -> *mut GList3573     pub fn g_list_sort_with_data(
3574         list: *mut GList,
3575         compare_func: GCompareDataFunc,
3576         user_data: gpointer,
3577     ) -> *mut GList;
3578 
3579     //=========================================================================
3580     // GMainContext
3581     //=========================================================================
g_main_context_get_type() -> GType3582     pub fn g_main_context_get_type() -> GType;
g_main_context_new() -> *mut GMainContext3583     pub fn g_main_context_new() -> *mut GMainContext;
g_main_context_acquire(context: *mut GMainContext) -> gboolean3584     pub fn g_main_context_acquire(context: *mut GMainContext) -> gboolean;
g_main_context_add_poll(context: *mut GMainContext, fd: *mut GPollFD, priority: c_int)3585     pub fn g_main_context_add_poll(context: *mut GMainContext, fd: *mut GPollFD, priority: c_int);
g_main_context_check( context: *mut GMainContext, max_priority: c_int, fds: *mut GPollFD, n_fds: c_int, ) -> gboolean3586     pub fn g_main_context_check(
3587         context: *mut GMainContext,
3588         max_priority: c_int,
3589         fds: *mut GPollFD,
3590         n_fds: c_int,
3591     ) -> gboolean;
g_main_context_dispatch(context: *mut GMainContext)3592     pub fn g_main_context_dispatch(context: *mut GMainContext);
g_main_context_find_source_by_funcs_user_data( context: *mut GMainContext, funcs: *mut GSourceFuncs, user_data: gpointer, ) -> *mut GSource3593     pub fn g_main_context_find_source_by_funcs_user_data(
3594         context: *mut GMainContext,
3595         funcs: *mut GSourceFuncs,
3596         user_data: gpointer,
3597     ) -> *mut GSource;
g_main_context_find_source_by_id( context: *mut GMainContext, source_id: c_uint, ) -> *mut GSource3598     pub fn g_main_context_find_source_by_id(
3599         context: *mut GMainContext,
3600         source_id: c_uint,
3601     ) -> *mut GSource;
g_main_context_find_source_by_user_data( context: *mut GMainContext, user_data: gpointer, ) -> *mut GSource3602     pub fn g_main_context_find_source_by_user_data(
3603         context: *mut GMainContext,
3604         user_data: gpointer,
3605     ) -> *mut GSource;
g_main_context_get_poll_func(context: *mut GMainContext) -> GPollFunc3606     pub fn g_main_context_get_poll_func(context: *mut GMainContext) -> GPollFunc;
g_main_context_invoke(context: *mut GMainContext, function: GSourceFunc, data: gpointer)3607     pub fn g_main_context_invoke(context: *mut GMainContext, function: GSourceFunc, data: gpointer);
g_main_context_invoke_full( context: *mut GMainContext, priority: c_int, function: GSourceFunc, data: gpointer, notify: GDestroyNotify, )3608     pub fn g_main_context_invoke_full(
3609         context: *mut GMainContext,
3610         priority: c_int,
3611         function: GSourceFunc,
3612         data: gpointer,
3613         notify: GDestroyNotify,
3614     );
g_main_context_is_owner(context: *mut GMainContext) -> gboolean3615     pub fn g_main_context_is_owner(context: *mut GMainContext) -> gboolean;
g_main_context_iteration(context: *mut GMainContext, may_block: gboolean) -> gboolean3616     pub fn g_main_context_iteration(context: *mut GMainContext, may_block: gboolean) -> gboolean;
g_main_context_pending(context: *mut GMainContext) -> gboolean3617     pub fn g_main_context_pending(context: *mut GMainContext) -> gboolean;
g_main_context_pop_thread_default(context: *mut GMainContext)3618     pub fn g_main_context_pop_thread_default(context: *mut GMainContext);
g_main_context_prepare(context: *mut GMainContext, priority: *mut c_int) -> gboolean3619     pub fn g_main_context_prepare(context: *mut GMainContext, priority: *mut c_int) -> gboolean;
g_main_context_push_thread_default(context: *mut GMainContext)3620     pub fn g_main_context_push_thread_default(context: *mut GMainContext);
g_main_context_query( context: *mut GMainContext, max_priority: c_int, timeout_: *mut c_int, fds: *mut GPollFD, n_fds: c_int, ) -> c_int3621     pub fn g_main_context_query(
3622         context: *mut GMainContext,
3623         max_priority: c_int,
3624         timeout_: *mut c_int,
3625         fds: *mut GPollFD,
3626         n_fds: c_int,
3627     ) -> c_int;
g_main_context_ref(context: *mut GMainContext) -> *mut GMainContext3628     pub fn g_main_context_ref(context: *mut GMainContext) -> *mut GMainContext;
g_main_context_release(context: *mut GMainContext)3629     pub fn g_main_context_release(context: *mut GMainContext);
g_main_context_remove_poll(context: *mut GMainContext, fd: *mut GPollFD)3630     pub fn g_main_context_remove_poll(context: *mut GMainContext, fd: *mut GPollFD);
g_main_context_set_poll_func(context: *mut GMainContext, func: GPollFunc)3631     pub fn g_main_context_set_poll_func(context: *mut GMainContext, func: GPollFunc);
g_main_context_unref(context: *mut GMainContext)3632     pub fn g_main_context_unref(context: *mut GMainContext);
g_main_context_wait( context: *mut GMainContext, cond: *mut GCond, mutex: *mut GMutex, ) -> gboolean3633     pub fn g_main_context_wait(
3634         context: *mut GMainContext,
3635         cond: *mut GCond,
3636         mutex: *mut GMutex,
3637     ) -> gboolean;
g_main_context_wakeup(context: *mut GMainContext)3638     pub fn g_main_context_wakeup(context: *mut GMainContext);
g_main_context_default() -> *mut GMainContext3639     pub fn g_main_context_default() -> *mut GMainContext;
g_main_context_get_thread_default() -> *mut GMainContext3640     pub fn g_main_context_get_thread_default() -> *mut GMainContext;
g_main_context_ref_thread_default() -> *mut GMainContext3641     pub fn g_main_context_ref_thread_default() -> *mut GMainContext;
3642 
3643     //=========================================================================
3644     // GMainLoop
3645     //=========================================================================
g_main_loop_get_type() -> GType3646     pub fn g_main_loop_get_type() -> GType;
g_main_loop_new(context: *mut GMainContext, is_running: gboolean) -> *mut GMainLoop3647     pub fn g_main_loop_new(context: *mut GMainContext, is_running: gboolean) -> *mut GMainLoop;
g_main_loop_get_context(loop_: *mut GMainLoop) -> *mut GMainContext3648     pub fn g_main_loop_get_context(loop_: *mut GMainLoop) -> *mut GMainContext;
g_main_loop_is_running(loop_: *mut GMainLoop) -> gboolean3649     pub fn g_main_loop_is_running(loop_: *mut GMainLoop) -> gboolean;
g_main_loop_quit(loop_: *mut GMainLoop)3650     pub fn g_main_loop_quit(loop_: *mut GMainLoop);
g_main_loop_ref(loop_: *mut GMainLoop) -> *mut GMainLoop3651     pub fn g_main_loop_ref(loop_: *mut GMainLoop) -> *mut GMainLoop;
g_main_loop_run(loop_: *mut GMainLoop)3652     pub fn g_main_loop_run(loop_: *mut GMainLoop);
g_main_loop_unref(loop_: *mut GMainLoop)3653     pub fn g_main_loop_unref(loop_: *mut GMainLoop);
3654 
3655     //=========================================================================
3656     // GMappedFile
3657     //=========================================================================
g_mapped_file_get_type() -> GType3658     pub fn g_mapped_file_get_type() -> GType;
g_mapped_file_new( filename: *const c_char, writable: gboolean, error: *mut *mut GError, ) -> *mut GMappedFile3659     pub fn g_mapped_file_new(
3660         filename: *const c_char,
3661         writable: gboolean,
3662         error: *mut *mut GError,
3663     ) -> *mut GMappedFile;
g_mapped_file_new_from_fd( fd: c_int, writable: gboolean, error: *mut *mut GError, ) -> *mut GMappedFile3664     pub fn g_mapped_file_new_from_fd(
3665         fd: c_int,
3666         writable: gboolean,
3667         error: *mut *mut GError,
3668     ) -> *mut GMappedFile;
g_mapped_file_free(file: *mut GMappedFile)3669     pub fn g_mapped_file_free(file: *mut GMappedFile);
g_mapped_file_get_bytes(file: *mut GMappedFile) -> *mut GBytes3670     pub fn g_mapped_file_get_bytes(file: *mut GMappedFile) -> *mut GBytes;
g_mapped_file_get_contents(file: *mut GMappedFile) -> *mut c_char3671     pub fn g_mapped_file_get_contents(file: *mut GMappedFile) -> *mut c_char;
g_mapped_file_get_length(file: *mut GMappedFile) -> size_t3672     pub fn g_mapped_file_get_length(file: *mut GMappedFile) -> size_t;
g_mapped_file_ref(file: *mut GMappedFile) -> *mut GMappedFile3673     pub fn g_mapped_file_ref(file: *mut GMappedFile) -> *mut GMappedFile;
g_mapped_file_unref(file: *mut GMappedFile)3674     pub fn g_mapped_file_unref(file: *mut GMappedFile);
3675 
3676     //=========================================================================
3677     // GMarkupParseContext
3678     //=========================================================================
g_markup_parse_context_get_type() -> GType3679     pub fn g_markup_parse_context_get_type() -> GType;
g_markup_parse_context_new( parser: *const GMarkupParser, flags: GMarkupParseFlags, user_data: gpointer, user_data_dnotify: GDestroyNotify, ) -> *mut GMarkupParseContext3680     pub fn g_markup_parse_context_new(
3681         parser: *const GMarkupParser,
3682         flags: GMarkupParseFlags,
3683         user_data: gpointer,
3684         user_data_dnotify: GDestroyNotify,
3685     ) -> *mut GMarkupParseContext;
g_markup_parse_context_end_parse( context: *mut GMarkupParseContext, error: *mut *mut GError, ) -> gboolean3686     pub fn g_markup_parse_context_end_parse(
3687         context: *mut GMarkupParseContext,
3688         error: *mut *mut GError,
3689     ) -> gboolean;
g_markup_parse_context_free(context: *mut GMarkupParseContext)3690     pub fn g_markup_parse_context_free(context: *mut GMarkupParseContext);
g_markup_parse_context_get_element(context: *mut GMarkupParseContext) -> *const c_char3691     pub fn g_markup_parse_context_get_element(context: *mut GMarkupParseContext) -> *const c_char;
g_markup_parse_context_get_element_stack( context: *mut GMarkupParseContext, ) -> *const GSList3692     pub fn g_markup_parse_context_get_element_stack(
3693         context: *mut GMarkupParseContext,
3694     ) -> *const GSList;
g_markup_parse_context_get_position( context: *mut GMarkupParseContext, line_number: *mut c_int, char_number: *mut c_int, )3695     pub fn g_markup_parse_context_get_position(
3696         context: *mut GMarkupParseContext,
3697         line_number: *mut c_int,
3698         char_number: *mut c_int,
3699     );
g_markup_parse_context_get_user_data(context: *mut GMarkupParseContext) -> gpointer3700     pub fn g_markup_parse_context_get_user_data(context: *mut GMarkupParseContext) -> gpointer;
g_markup_parse_context_parse( context: *mut GMarkupParseContext, text: *const c_char, text_len: ssize_t, error: *mut *mut GError, ) -> gboolean3701     pub fn g_markup_parse_context_parse(
3702         context: *mut GMarkupParseContext,
3703         text: *const c_char,
3704         text_len: ssize_t,
3705         error: *mut *mut GError,
3706     ) -> gboolean;
g_markup_parse_context_pop(context: *mut GMarkupParseContext) -> gpointer3707     pub fn g_markup_parse_context_pop(context: *mut GMarkupParseContext) -> gpointer;
g_markup_parse_context_push( context: *mut GMarkupParseContext, parser: *const GMarkupParser, user_data: gpointer, )3708     pub fn g_markup_parse_context_push(
3709         context: *mut GMarkupParseContext,
3710         parser: *const GMarkupParser,
3711         user_data: gpointer,
3712     );
g_markup_parse_context_ref( context: *mut GMarkupParseContext, ) -> *mut GMarkupParseContext3713     pub fn g_markup_parse_context_ref(
3714         context: *mut GMarkupParseContext,
3715     ) -> *mut GMarkupParseContext;
g_markup_parse_context_unref(context: *mut GMarkupParseContext)3716     pub fn g_markup_parse_context_unref(context: *mut GMarkupParseContext);
3717 
3718     //=========================================================================
3719     // GMatchInfo
3720     //=========================================================================
g_match_info_get_type() -> GType3721     pub fn g_match_info_get_type() -> GType;
g_match_info_expand_references( match_info: *const GMatchInfo, string_to_expand: *const c_char, error: *mut *mut GError, ) -> *mut c_char3722     pub fn g_match_info_expand_references(
3723         match_info: *const GMatchInfo,
3724         string_to_expand: *const c_char,
3725         error: *mut *mut GError,
3726     ) -> *mut c_char;
g_match_info_fetch(match_info: *const GMatchInfo, match_num: c_int) -> *mut c_char3727     pub fn g_match_info_fetch(match_info: *const GMatchInfo, match_num: c_int) -> *mut c_char;
g_match_info_fetch_all(match_info: *const GMatchInfo) -> *mut *mut c_char3728     pub fn g_match_info_fetch_all(match_info: *const GMatchInfo) -> *mut *mut c_char;
g_match_info_fetch_named( match_info: *const GMatchInfo, name: *const c_char, ) -> *mut c_char3729     pub fn g_match_info_fetch_named(
3730         match_info: *const GMatchInfo,
3731         name: *const c_char,
3732     ) -> *mut c_char;
g_match_info_fetch_named_pos( match_info: *const GMatchInfo, name: *const c_char, start_pos: *mut c_int, end_pos: *mut c_int, ) -> gboolean3733     pub fn g_match_info_fetch_named_pos(
3734         match_info: *const GMatchInfo,
3735         name: *const c_char,
3736         start_pos: *mut c_int,
3737         end_pos: *mut c_int,
3738     ) -> gboolean;
g_match_info_fetch_pos( match_info: *const GMatchInfo, match_num: c_int, start_pos: *mut c_int, end_pos: *mut c_int, ) -> gboolean3739     pub fn g_match_info_fetch_pos(
3740         match_info: *const GMatchInfo,
3741         match_num: c_int,
3742         start_pos: *mut c_int,
3743         end_pos: *mut c_int,
3744     ) -> gboolean;
g_match_info_free(match_info: *mut GMatchInfo)3745     pub fn g_match_info_free(match_info: *mut GMatchInfo);
g_match_info_get_match_count(match_info: *const GMatchInfo) -> c_int3746     pub fn g_match_info_get_match_count(match_info: *const GMatchInfo) -> c_int;
g_match_info_get_regex(match_info: *const GMatchInfo) -> *mut GRegex3747     pub fn g_match_info_get_regex(match_info: *const GMatchInfo) -> *mut GRegex;
g_match_info_get_string(match_info: *const GMatchInfo) -> *const c_char3748     pub fn g_match_info_get_string(match_info: *const GMatchInfo) -> *const c_char;
g_match_info_is_partial_match(match_info: *const GMatchInfo) -> gboolean3749     pub fn g_match_info_is_partial_match(match_info: *const GMatchInfo) -> gboolean;
g_match_info_matches(match_info: *const GMatchInfo) -> gboolean3750     pub fn g_match_info_matches(match_info: *const GMatchInfo) -> gboolean;
g_match_info_next(match_info: *mut GMatchInfo, error: *mut *mut GError) -> gboolean3751     pub fn g_match_info_next(match_info: *mut GMatchInfo, error: *mut *mut GError) -> gboolean;
g_match_info_ref(match_info: *mut GMatchInfo) -> *mut GMatchInfo3752     pub fn g_match_info_ref(match_info: *mut GMatchInfo) -> *mut GMatchInfo;
g_match_info_unref(match_info: *mut GMatchInfo)3753     pub fn g_match_info_unref(match_info: *mut GMatchInfo);
3754 
3755     //=========================================================================
3756     // GNode
3757     //=========================================================================
g_node_child_index(node: *mut GNode, data: gpointer) -> c_int3758     pub fn g_node_child_index(node: *mut GNode, data: gpointer) -> c_int;
g_node_child_position(node: *mut GNode, child: *mut GNode) -> c_int3759     pub fn g_node_child_position(node: *mut GNode, child: *mut GNode) -> c_int;
g_node_children_foreach( node: *mut GNode, flags: GTraverseFlags, func: GNodeForeachFunc, data: gpointer, )3760     pub fn g_node_children_foreach(
3761         node: *mut GNode,
3762         flags: GTraverseFlags,
3763         func: GNodeForeachFunc,
3764         data: gpointer,
3765     );
g_node_copy(node: *mut GNode) -> *mut GNode3766     pub fn g_node_copy(node: *mut GNode) -> *mut GNode;
g_node_copy_deep(node: *mut GNode, copy_func: GCopyFunc, data: gpointer) -> *mut GNode3767     pub fn g_node_copy_deep(node: *mut GNode, copy_func: GCopyFunc, data: gpointer) -> *mut GNode;
g_node_depth(node: *mut GNode) -> c_uint3768     pub fn g_node_depth(node: *mut GNode) -> c_uint;
g_node_destroy(root: *mut GNode)3769     pub fn g_node_destroy(root: *mut GNode);
g_node_find( root: *mut GNode, order: GTraverseType, flags: GTraverseFlags, data: gpointer, ) -> *mut GNode3770     pub fn g_node_find(
3771         root: *mut GNode,
3772         order: GTraverseType,
3773         flags: GTraverseFlags,
3774         data: gpointer,
3775     ) -> *mut GNode;
g_node_find_child(node: *mut GNode, flags: GTraverseFlags, data: gpointer) -> *mut GNode3776     pub fn g_node_find_child(node: *mut GNode, flags: GTraverseFlags, data: gpointer)
3777         -> *mut GNode;
g_node_first_sibling(node: *mut GNode) -> *mut GNode3778     pub fn g_node_first_sibling(node: *mut GNode) -> *mut GNode;
g_node_get_root(node: *mut GNode) -> *mut GNode3779     pub fn g_node_get_root(node: *mut GNode) -> *mut GNode;
g_node_insert(parent: *mut GNode, position: c_int, node: *mut GNode) -> *mut GNode3780     pub fn g_node_insert(parent: *mut GNode, position: c_int, node: *mut GNode) -> *mut GNode;
g_node_insert_after( parent: *mut GNode, sibling: *mut GNode, node: *mut GNode, ) -> *mut GNode3781     pub fn g_node_insert_after(
3782         parent: *mut GNode,
3783         sibling: *mut GNode,
3784         node: *mut GNode,
3785     ) -> *mut GNode;
g_node_insert_before( parent: *mut GNode, sibling: *mut GNode, node: *mut GNode, ) -> *mut GNode3786     pub fn g_node_insert_before(
3787         parent: *mut GNode,
3788         sibling: *mut GNode,
3789         node: *mut GNode,
3790     ) -> *mut GNode;
g_node_is_ancestor(node: *mut GNode, descendant: *mut GNode) -> gboolean3791     pub fn g_node_is_ancestor(node: *mut GNode, descendant: *mut GNode) -> gboolean;
g_node_last_child(node: *mut GNode) -> *mut GNode3792     pub fn g_node_last_child(node: *mut GNode) -> *mut GNode;
g_node_last_sibling(node: *mut GNode) -> *mut GNode3793     pub fn g_node_last_sibling(node: *mut GNode) -> *mut GNode;
g_node_max_height(root: *mut GNode) -> c_uint3794     pub fn g_node_max_height(root: *mut GNode) -> c_uint;
g_node_n_children(node: *mut GNode) -> c_uint3795     pub fn g_node_n_children(node: *mut GNode) -> c_uint;
g_node_n_nodes(root: *mut GNode, flags: GTraverseFlags) -> c_uint3796     pub fn g_node_n_nodes(root: *mut GNode, flags: GTraverseFlags) -> c_uint;
g_node_nth_child(node: *mut GNode, n: c_uint) -> *mut GNode3797     pub fn g_node_nth_child(node: *mut GNode, n: c_uint) -> *mut GNode;
g_node_prepend(parent: *mut GNode, node: *mut GNode) -> *mut GNode3798     pub fn g_node_prepend(parent: *mut GNode, node: *mut GNode) -> *mut GNode;
g_node_reverse_children(node: *mut GNode)3799     pub fn g_node_reverse_children(node: *mut GNode);
g_node_traverse( root: *mut GNode, order: GTraverseType, flags: GTraverseFlags, max_depth: c_int, func: GNodeTraverseFunc, data: gpointer, )3800     pub fn g_node_traverse(
3801         root: *mut GNode,
3802         order: GTraverseType,
3803         flags: GTraverseFlags,
3804         max_depth: c_int,
3805         func: GNodeTraverseFunc,
3806         data: gpointer,
3807     );
g_node_unlink(node: *mut GNode)3808     pub fn g_node_unlink(node: *mut GNode);
g_node_new(data: gpointer) -> *mut GNode3809     pub fn g_node_new(data: gpointer) -> *mut GNode;
3810 
3811     //=========================================================================
3812     // GOnce
3813     //=========================================================================
g_once_impl(once: *mut GOnce, func: GThreadFunc, arg: gpointer) -> gpointer3814     pub fn g_once_impl(once: *mut GOnce, func: GThreadFunc, arg: gpointer) -> gpointer;
g_once_init_enter(location: *mut c_void) -> gboolean3815     pub fn g_once_init_enter(location: *mut c_void) -> gboolean;
g_once_init_leave(location: *mut c_void, result: size_t)3816     pub fn g_once_init_leave(location: *mut c_void, result: size_t);
3817 
3818     //=========================================================================
3819     // GOptionContext
3820     //=========================================================================
g_option_context_add_group(context: *mut GOptionContext, group: *mut GOptionGroup)3821     pub fn g_option_context_add_group(context: *mut GOptionContext, group: *mut GOptionGroup);
g_option_context_add_main_entries( context: *mut GOptionContext, entries: *const GOptionEntry, translation_domain: *const c_char, )3822     pub fn g_option_context_add_main_entries(
3823         context: *mut GOptionContext,
3824         entries: *const GOptionEntry,
3825         translation_domain: *const c_char,
3826     );
g_option_context_free(context: *mut GOptionContext)3827     pub fn g_option_context_free(context: *mut GOptionContext);
g_option_context_get_description(context: *mut GOptionContext) -> *const c_char3828     pub fn g_option_context_get_description(context: *mut GOptionContext) -> *const c_char;
g_option_context_get_help( context: *mut GOptionContext, main_help: gboolean, group: *mut GOptionGroup, ) -> *mut c_char3829     pub fn g_option_context_get_help(
3830         context: *mut GOptionContext,
3831         main_help: gboolean,
3832         group: *mut GOptionGroup,
3833     ) -> *mut c_char;
g_option_context_get_help_enabled(context: *mut GOptionContext) -> gboolean3834     pub fn g_option_context_get_help_enabled(context: *mut GOptionContext) -> gboolean;
g_option_context_get_ignore_unknown_options(context: *mut GOptionContext) -> gboolean3835     pub fn g_option_context_get_ignore_unknown_options(context: *mut GOptionContext) -> gboolean;
g_option_context_get_main_group(context: *mut GOptionContext) -> *mut GOptionGroup3836     pub fn g_option_context_get_main_group(context: *mut GOptionContext) -> *mut GOptionGroup;
g_option_context_get_strict_posix(context: *mut GOptionContext) -> gboolean3837     pub fn g_option_context_get_strict_posix(context: *mut GOptionContext) -> gboolean;
g_option_context_get_summary(context: *mut GOptionContext) -> *const c_char3838     pub fn g_option_context_get_summary(context: *mut GOptionContext) -> *const c_char;
g_option_context_parse( context: *mut GOptionContext, argc: *mut c_int, argv: *mut *mut *mut c_char, error: *mut *mut GError, ) -> gboolean3839     pub fn g_option_context_parse(
3840         context: *mut GOptionContext,
3841         argc: *mut c_int,
3842         argv: *mut *mut *mut c_char,
3843         error: *mut *mut GError,
3844     ) -> gboolean;
g_option_context_parse_strv( context: *mut GOptionContext, arguments: *mut *mut *mut c_char, error: *mut *mut GError, ) -> gboolean3845     pub fn g_option_context_parse_strv(
3846         context: *mut GOptionContext,
3847         arguments: *mut *mut *mut c_char,
3848         error: *mut *mut GError,
3849     ) -> gboolean;
g_option_context_set_description( context: *mut GOptionContext, description: *const c_char, )3850     pub fn g_option_context_set_description(
3851         context: *mut GOptionContext,
3852         description: *const c_char,
3853     );
g_option_context_set_help_enabled(context: *mut GOptionContext, help_enabled: gboolean)3854     pub fn g_option_context_set_help_enabled(context: *mut GOptionContext, help_enabled: gboolean);
g_option_context_set_ignore_unknown_options( context: *mut GOptionContext, ignore_unknown: gboolean, )3855     pub fn g_option_context_set_ignore_unknown_options(
3856         context: *mut GOptionContext,
3857         ignore_unknown: gboolean,
3858     );
g_option_context_set_main_group(context: *mut GOptionContext, group: *mut GOptionGroup)3859     pub fn g_option_context_set_main_group(context: *mut GOptionContext, group: *mut GOptionGroup);
g_option_context_set_strict_posix(context: *mut GOptionContext, strict_posix: gboolean)3860     pub fn g_option_context_set_strict_posix(context: *mut GOptionContext, strict_posix: gboolean);
g_option_context_set_summary(context: *mut GOptionContext, summary: *const c_char)3861     pub fn g_option_context_set_summary(context: *mut GOptionContext, summary: *const c_char);
g_option_context_set_translate_func( context: *mut GOptionContext, func: GTranslateFunc, data: gpointer, destroy_notify: GDestroyNotify, )3862     pub fn g_option_context_set_translate_func(
3863         context: *mut GOptionContext,
3864         func: GTranslateFunc,
3865         data: gpointer,
3866         destroy_notify: GDestroyNotify,
3867     );
g_option_context_set_translation_domain( context: *mut GOptionContext, domain: *const c_char, )3868     pub fn g_option_context_set_translation_domain(
3869         context: *mut GOptionContext,
3870         domain: *const c_char,
3871     );
g_option_context_new(parameter_string: *const c_char) -> *mut GOptionContext3872     pub fn g_option_context_new(parameter_string: *const c_char) -> *mut GOptionContext;
3873 
3874     //=========================================================================
3875     // GOptionGroup
3876     //=========================================================================
g_option_group_get_type() -> GType3877     pub fn g_option_group_get_type() -> GType;
g_option_group_new( name: *const c_char, description: *const c_char, help_description: *const c_char, user_data: gpointer, destroy: GDestroyNotify, ) -> *mut GOptionGroup3878     pub fn g_option_group_new(
3879         name: *const c_char,
3880         description: *const c_char,
3881         help_description: *const c_char,
3882         user_data: gpointer,
3883         destroy: GDestroyNotify,
3884     ) -> *mut GOptionGroup;
g_option_group_add_entries(group: *mut GOptionGroup, entries: *const GOptionEntry)3885     pub fn g_option_group_add_entries(group: *mut GOptionGroup, entries: *const GOptionEntry);
g_option_group_free(group: *mut GOptionGroup)3886     pub fn g_option_group_free(group: *mut GOptionGroup);
g_option_group_ref(group: *mut GOptionGroup) -> *mut GOptionGroup3887     pub fn g_option_group_ref(group: *mut GOptionGroup) -> *mut GOptionGroup;
g_option_group_set_error_hook(group: *mut GOptionGroup, error_func: GOptionErrorFunc)3888     pub fn g_option_group_set_error_hook(group: *mut GOptionGroup, error_func: GOptionErrorFunc);
g_option_group_set_parse_hooks( group: *mut GOptionGroup, pre_parse_func: GOptionParseFunc, post_parse_func: GOptionParseFunc, )3889     pub fn g_option_group_set_parse_hooks(
3890         group: *mut GOptionGroup,
3891         pre_parse_func: GOptionParseFunc,
3892         post_parse_func: GOptionParseFunc,
3893     );
g_option_group_set_translate_func( group: *mut GOptionGroup, func: GTranslateFunc, data: gpointer, destroy_notify: GDestroyNotify, )3894     pub fn g_option_group_set_translate_func(
3895         group: *mut GOptionGroup,
3896         func: GTranslateFunc,
3897         data: gpointer,
3898         destroy_notify: GDestroyNotify,
3899     );
g_option_group_set_translation_domain(group: *mut GOptionGroup, domain: *const c_char)3900     pub fn g_option_group_set_translation_domain(group: *mut GOptionGroup, domain: *const c_char);
g_option_group_unref(group: *mut GOptionGroup)3901     pub fn g_option_group_unref(group: *mut GOptionGroup);
3902 
3903     //=========================================================================
3904     // GPatternSpec
3905     //=========================================================================
g_pattern_spec_equal(pspec1: *mut GPatternSpec, pspec2: *mut GPatternSpec) -> gboolean3906     pub fn g_pattern_spec_equal(pspec1: *mut GPatternSpec, pspec2: *mut GPatternSpec) -> gboolean;
g_pattern_spec_free(pspec: *mut GPatternSpec)3907     pub fn g_pattern_spec_free(pspec: *mut GPatternSpec);
g_pattern_spec_new(pattern: *const c_char) -> *mut GPatternSpec3908     pub fn g_pattern_spec_new(pattern: *const c_char) -> *mut GPatternSpec;
3909 
3910     //=========================================================================
3911     // GPollFD
3912     //=========================================================================
g_pollfd_get_type() -> GType3913     pub fn g_pollfd_get_type() -> GType;
3914 
3915     //=========================================================================
3916     // GPrivate
3917     //=========================================================================
g_private_get(key: *mut GPrivate) -> gpointer3918     pub fn g_private_get(key: *mut GPrivate) -> gpointer;
g_private_replace(key: *mut GPrivate, value: gpointer)3919     pub fn g_private_replace(key: *mut GPrivate, value: gpointer);
g_private_set(key: *mut GPrivate, value: gpointer)3920     pub fn g_private_set(key: *mut GPrivate, value: gpointer);
3921 
3922     //=========================================================================
3923     // GPtrArray
3924     //=========================================================================
g_ptr_array_get_type() -> GType3925     pub fn g_ptr_array_get_type() -> GType;
g_ptr_array_add(array: *mut GPtrArray, data: gpointer)3926     pub fn g_ptr_array_add(array: *mut GPtrArray, data: gpointer);
3927     #[cfg(any(feature = "v2_62", feature = "dox"))]
3928     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_ptr_array_copy( array: *mut GPtrArray, func: GCopyFunc, user_data: gpointer, ) -> *mut GPtrArray3929     pub fn g_ptr_array_copy(
3930         array: *mut GPtrArray,
3931         func: GCopyFunc,
3932         user_data: gpointer,
3933     ) -> *mut GPtrArray;
3934     #[cfg(any(feature = "v2_62", feature = "dox"))]
3935     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_ptr_array_extend( array_to_extend: *mut GPtrArray, array: *mut GPtrArray, func: GCopyFunc, user_data: gpointer, )3936     pub fn g_ptr_array_extend(
3937         array_to_extend: *mut GPtrArray,
3938         array: *mut GPtrArray,
3939         func: GCopyFunc,
3940         user_data: gpointer,
3941     );
3942     #[cfg(any(feature = "v2_62", feature = "dox"))]
3943     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_ptr_array_extend_and_steal(array_to_extend: *mut GPtrArray, array: *mut GPtrArray)3944     pub fn g_ptr_array_extend_and_steal(array_to_extend: *mut GPtrArray, array: *mut GPtrArray);
3945     #[cfg(any(feature = "v2_54", feature = "dox"))]
3946     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_54")))]
g_ptr_array_find( haystack: *mut GPtrArray, needle: gconstpointer, index_: *mut c_uint, ) -> gboolean3947     pub fn g_ptr_array_find(
3948         haystack: *mut GPtrArray,
3949         needle: gconstpointer,
3950         index_: *mut c_uint,
3951     ) -> gboolean;
3952     #[cfg(any(feature = "v2_54", feature = "dox"))]
3953     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_54")))]
g_ptr_array_find_with_equal_func( haystack: *mut GPtrArray, needle: gconstpointer, equal_func: GEqualFunc, index_: *mut c_uint, ) -> gboolean3954     pub fn g_ptr_array_find_with_equal_func(
3955         haystack: *mut GPtrArray,
3956         needle: gconstpointer,
3957         equal_func: GEqualFunc,
3958         index_: *mut c_uint,
3959     ) -> gboolean;
g_ptr_array_foreach(array: *mut GPtrArray, func: GFunc, user_data: gpointer)3960     pub fn g_ptr_array_foreach(array: *mut GPtrArray, func: GFunc, user_data: gpointer);
g_ptr_array_free(array: *mut GPtrArray, free_seg: gboolean) -> *mut gpointer3961     pub fn g_ptr_array_free(array: *mut GPtrArray, free_seg: gboolean) -> *mut gpointer;
g_ptr_array_insert(array: *mut GPtrArray, index_: c_int, data: gpointer)3962     pub fn g_ptr_array_insert(array: *mut GPtrArray, index_: c_int, data: gpointer);
g_ptr_array_new() -> *mut GPtrArray3963     pub fn g_ptr_array_new() -> *mut GPtrArray;
g_ptr_array_new_full( reserved_size: c_uint, element_free_func: GDestroyNotify, ) -> *mut GPtrArray3964     pub fn g_ptr_array_new_full(
3965         reserved_size: c_uint,
3966         element_free_func: GDestroyNotify,
3967     ) -> *mut GPtrArray;
g_ptr_array_new_with_free_func(element_free_func: GDestroyNotify) -> *mut GPtrArray3968     pub fn g_ptr_array_new_with_free_func(element_free_func: GDestroyNotify) -> *mut GPtrArray;
g_ptr_array_ref(array: *mut GPtrArray) -> *mut GPtrArray3969     pub fn g_ptr_array_ref(array: *mut GPtrArray) -> *mut GPtrArray;
g_ptr_array_remove(array: *mut GPtrArray, data: gpointer) -> gboolean3970     pub fn g_ptr_array_remove(array: *mut GPtrArray, data: gpointer) -> gboolean;
g_ptr_array_remove_fast(array: *mut GPtrArray, data: gpointer) -> gboolean3971     pub fn g_ptr_array_remove_fast(array: *mut GPtrArray, data: gpointer) -> gboolean;
g_ptr_array_remove_index(array: *mut GPtrArray, index_: c_uint) -> gpointer3972     pub fn g_ptr_array_remove_index(array: *mut GPtrArray, index_: c_uint) -> gpointer;
g_ptr_array_remove_index_fast(array: *mut GPtrArray, index_: c_uint) -> gpointer3973     pub fn g_ptr_array_remove_index_fast(array: *mut GPtrArray, index_: c_uint) -> gpointer;
g_ptr_array_remove_range( array: *mut GPtrArray, index_: c_uint, length: c_uint, ) -> *mut GPtrArray3974     pub fn g_ptr_array_remove_range(
3975         array: *mut GPtrArray,
3976         index_: c_uint,
3977         length: c_uint,
3978     ) -> *mut GPtrArray;
g_ptr_array_set_free_func(array: *mut GPtrArray, element_free_func: GDestroyNotify)3979     pub fn g_ptr_array_set_free_func(array: *mut GPtrArray, element_free_func: GDestroyNotify);
g_ptr_array_set_size(array: *mut GPtrArray, length: c_int)3980     pub fn g_ptr_array_set_size(array: *mut GPtrArray, length: c_int);
g_ptr_array_sized_new(reserved_size: c_uint) -> *mut GPtrArray3981     pub fn g_ptr_array_sized_new(reserved_size: c_uint) -> *mut GPtrArray;
g_ptr_array_sort(array: *mut GPtrArray, compare_func: GCompareFunc)3982     pub fn g_ptr_array_sort(array: *mut GPtrArray, compare_func: GCompareFunc);
g_ptr_array_sort_with_data( array: *mut GPtrArray, compare_func: GCompareDataFunc, user_data: gpointer, )3983     pub fn g_ptr_array_sort_with_data(
3984         array: *mut GPtrArray,
3985         compare_func: GCompareDataFunc,
3986         user_data: gpointer,
3987     );
3988     #[cfg(any(feature = "v2_64", feature = "dox"))]
3989     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_64")))]
g_ptr_array_steal(array: *mut GPtrArray, len: *mut size_t) -> *mut gpointer3990     pub fn g_ptr_array_steal(array: *mut GPtrArray, len: *mut size_t) -> *mut gpointer;
3991     #[cfg(any(feature = "v2_58", feature = "dox"))]
3992     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ptr_array_steal_index(array: *mut GPtrArray, index_: c_uint) -> gpointer3993     pub fn g_ptr_array_steal_index(array: *mut GPtrArray, index_: c_uint) -> gpointer;
3994     #[cfg(any(feature = "v2_58", feature = "dox"))]
3995     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ptr_array_steal_index_fast(array: *mut GPtrArray, index_: c_uint) -> gpointer3996     pub fn g_ptr_array_steal_index_fast(array: *mut GPtrArray, index_: c_uint) -> gpointer;
g_ptr_array_unref(array: *mut GPtrArray)3997     pub fn g_ptr_array_unref(array: *mut GPtrArray);
3998 
3999     //=========================================================================
4000     // GQueue
4001     //=========================================================================
g_queue_clear(queue: *mut GQueue)4002     pub fn g_queue_clear(queue: *mut GQueue);
4003     #[cfg(any(feature = "v2_60", feature = "dox"))]
4004     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_60")))]
g_queue_clear_full(queue: *mut GQueue, free_func: GDestroyNotify)4005     pub fn g_queue_clear_full(queue: *mut GQueue, free_func: GDestroyNotify);
g_queue_copy(queue: *mut GQueue) -> *mut GQueue4006     pub fn g_queue_copy(queue: *mut GQueue) -> *mut GQueue;
g_queue_delete_link(queue: *mut GQueue, link_: *mut GList)4007     pub fn g_queue_delete_link(queue: *mut GQueue, link_: *mut GList);
g_queue_find(queue: *mut GQueue, data: gconstpointer) -> *mut GList4008     pub fn g_queue_find(queue: *mut GQueue, data: gconstpointer) -> *mut GList;
g_queue_find_custom( queue: *mut GQueue, data: gconstpointer, func: GCompareFunc, ) -> *mut GList4009     pub fn g_queue_find_custom(
4010         queue: *mut GQueue,
4011         data: gconstpointer,
4012         func: GCompareFunc,
4013     ) -> *mut GList;
g_queue_foreach(queue: *mut GQueue, func: GFunc, user_data: gpointer)4014     pub fn g_queue_foreach(queue: *mut GQueue, func: GFunc, user_data: gpointer);
g_queue_free(queue: *mut GQueue)4015     pub fn g_queue_free(queue: *mut GQueue);
g_queue_free_full(queue: *mut GQueue, free_func: GDestroyNotify)4016     pub fn g_queue_free_full(queue: *mut GQueue, free_func: GDestroyNotify);
g_queue_get_length(queue: *mut GQueue) -> c_uint4017     pub fn g_queue_get_length(queue: *mut GQueue) -> c_uint;
g_queue_index(queue: *mut GQueue, data: gconstpointer) -> c_int4018     pub fn g_queue_index(queue: *mut GQueue, data: gconstpointer) -> c_int;
g_queue_init(queue: *mut GQueue)4019     pub fn g_queue_init(queue: *mut GQueue);
g_queue_insert_after(queue: *mut GQueue, sibling: *mut GList, data: gpointer)4020     pub fn g_queue_insert_after(queue: *mut GQueue, sibling: *mut GList, data: gpointer);
4021     #[cfg(any(feature = "v2_62", feature = "dox"))]
4022     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_queue_insert_after_link(queue: *mut GQueue, sibling: *mut GList, link_: *mut GList)4023     pub fn g_queue_insert_after_link(queue: *mut GQueue, sibling: *mut GList, link_: *mut GList);
g_queue_insert_before(queue: *mut GQueue, sibling: *mut GList, data: gpointer)4024     pub fn g_queue_insert_before(queue: *mut GQueue, sibling: *mut GList, data: gpointer);
4025     #[cfg(any(feature = "v2_62", feature = "dox"))]
4026     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_queue_insert_before_link(queue: *mut GQueue, sibling: *mut GList, link_: *mut GList)4027     pub fn g_queue_insert_before_link(queue: *mut GQueue, sibling: *mut GList, link_: *mut GList);
g_queue_insert_sorted( queue: *mut GQueue, data: gpointer, func: GCompareDataFunc, user_data: gpointer, )4028     pub fn g_queue_insert_sorted(
4029         queue: *mut GQueue,
4030         data: gpointer,
4031         func: GCompareDataFunc,
4032         user_data: gpointer,
4033     );
g_queue_is_empty(queue: *mut GQueue) -> gboolean4034     pub fn g_queue_is_empty(queue: *mut GQueue) -> gboolean;
g_queue_link_index(queue: *mut GQueue, link_: *mut GList) -> c_int4035     pub fn g_queue_link_index(queue: *mut GQueue, link_: *mut GList) -> c_int;
g_queue_peek_head(queue: *mut GQueue) -> gpointer4036     pub fn g_queue_peek_head(queue: *mut GQueue) -> gpointer;
g_queue_peek_head_link(queue: *mut GQueue) -> *mut GList4037     pub fn g_queue_peek_head_link(queue: *mut GQueue) -> *mut GList;
g_queue_peek_nth(queue: *mut GQueue, n: c_uint) -> gpointer4038     pub fn g_queue_peek_nth(queue: *mut GQueue, n: c_uint) -> gpointer;
g_queue_peek_nth_link(queue: *mut GQueue, n: c_uint) -> *mut GList4039     pub fn g_queue_peek_nth_link(queue: *mut GQueue, n: c_uint) -> *mut GList;
g_queue_peek_tail(queue: *mut GQueue) -> gpointer4040     pub fn g_queue_peek_tail(queue: *mut GQueue) -> gpointer;
g_queue_peek_tail_link(queue: *mut GQueue) -> *mut GList4041     pub fn g_queue_peek_tail_link(queue: *mut GQueue) -> *mut GList;
g_queue_pop_head(queue: *mut GQueue) -> gpointer4042     pub fn g_queue_pop_head(queue: *mut GQueue) -> gpointer;
g_queue_pop_head_link(queue: *mut GQueue) -> *mut GList4043     pub fn g_queue_pop_head_link(queue: *mut GQueue) -> *mut GList;
g_queue_pop_nth(queue: *mut GQueue, n: c_uint) -> gpointer4044     pub fn g_queue_pop_nth(queue: *mut GQueue, n: c_uint) -> gpointer;
g_queue_pop_nth_link(queue: *mut GQueue, n: c_uint) -> *mut GList4045     pub fn g_queue_pop_nth_link(queue: *mut GQueue, n: c_uint) -> *mut GList;
g_queue_pop_tail(queue: *mut GQueue) -> gpointer4046     pub fn g_queue_pop_tail(queue: *mut GQueue) -> gpointer;
g_queue_pop_tail_link(queue: *mut GQueue) -> *mut GList4047     pub fn g_queue_pop_tail_link(queue: *mut GQueue) -> *mut GList;
g_queue_push_head(queue: *mut GQueue, data: gpointer)4048     pub fn g_queue_push_head(queue: *mut GQueue, data: gpointer);
g_queue_push_head_link(queue: *mut GQueue, link_: *mut GList)4049     pub fn g_queue_push_head_link(queue: *mut GQueue, link_: *mut GList);
g_queue_push_nth(queue: *mut GQueue, data: gpointer, n: c_int)4050     pub fn g_queue_push_nth(queue: *mut GQueue, data: gpointer, n: c_int);
g_queue_push_nth_link(queue: *mut GQueue, n: c_int, link_: *mut GList)4051     pub fn g_queue_push_nth_link(queue: *mut GQueue, n: c_int, link_: *mut GList);
g_queue_push_tail(queue: *mut GQueue, data: gpointer)4052     pub fn g_queue_push_tail(queue: *mut GQueue, data: gpointer);
g_queue_push_tail_link(queue: *mut GQueue, link_: *mut GList)4053     pub fn g_queue_push_tail_link(queue: *mut GQueue, link_: *mut GList);
g_queue_remove(queue: *mut GQueue, data: gconstpointer) -> gboolean4054     pub fn g_queue_remove(queue: *mut GQueue, data: gconstpointer) -> gboolean;
g_queue_remove_all(queue: *mut GQueue, data: gconstpointer) -> c_uint4055     pub fn g_queue_remove_all(queue: *mut GQueue, data: gconstpointer) -> c_uint;
g_queue_reverse(queue: *mut GQueue)4056     pub fn g_queue_reverse(queue: *mut GQueue);
g_queue_sort(queue: *mut GQueue, compare_func: GCompareDataFunc, user_data: gpointer)4057     pub fn g_queue_sort(queue: *mut GQueue, compare_func: GCompareDataFunc, user_data: gpointer);
g_queue_unlink(queue: *mut GQueue, link_: *mut GList)4058     pub fn g_queue_unlink(queue: *mut GQueue, link_: *mut GList);
g_queue_new() -> *mut GQueue4059     pub fn g_queue_new() -> *mut GQueue;
4060 
4061     //=========================================================================
4062     // GRWLock
4063     //=========================================================================
g_rw_lock_clear(rw_lock: *mut GRWLock)4064     pub fn g_rw_lock_clear(rw_lock: *mut GRWLock);
g_rw_lock_init(rw_lock: *mut GRWLock)4065     pub fn g_rw_lock_init(rw_lock: *mut GRWLock);
g_rw_lock_reader_lock(rw_lock: *mut GRWLock)4066     pub fn g_rw_lock_reader_lock(rw_lock: *mut GRWLock);
g_rw_lock_reader_trylock(rw_lock: *mut GRWLock) -> gboolean4067     pub fn g_rw_lock_reader_trylock(rw_lock: *mut GRWLock) -> gboolean;
g_rw_lock_reader_unlock(rw_lock: *mut GRWLock)4068     pub fn g_rw_lock_reader_unlock(rw_lock: *mut GRWLock);
g_rw_lock_writer_lock(rw_lock: *mut GRWLock)4069     pub fn g_rw_lock_writer_lock(rw_lock: *mut GRWLock);
g_rw_lock_writer_trylock(rw_lock: *mut GRWLock) -> gboolean4070     pub fn g_rw_lock_writer_trylock(rw_lock: *mut GRWLock) -> gboolean;
g_rw_lock_writer_unlock(rw_lock: *mut GRWLock)4071     pub fn g_rw_lock_writer_unlock(rw_lock: *mut GRWLock);
4072 
4073     //=========================================================================
4074     // GRand
4075     //=========================================================================
g_rand_copy(rand_: *mut GRand) -> *mut GRand4076     pub fn g_rand_copy(rand_: *mut GRand) -> *mut GRand;
g_rand_double(rand_: *mut GRand) -> c_double4077     pub fn g_rand_double(rand_: *mut GRand) -> c_double;
g_rand_double_range(rand_: *mut GRand, begin: c_double, end: c_double) -> c_double4078     pub fn g_rand_double_range(rand_: *mut GRand, begin: c_double, end: c_double) -> c_double;
g_rand_free(rand_: *mut GRand)4079     pub fn g_rand_free(rand_: *mut GRand);
g_rand_int(rand_: *mut GRand) -> u324080     pub fn g_rand_int(rand_: *mut GRand) -> u32;
g_rand_int_range(rand_: *mut GRand, begin: i32, end: i32) -> i324081     pub fn g_rand_int_range(rand_: *mut GRand, begin: i32, end: i32) -> i32;
g_rand_set_seed(rand_: *mut GRand, seed: u32)4082     pub fn g_rand_set_seed(rand_: *mut GRand, seed: u32);
g_rand_set_seed_array(rand_: *mut GRand, seed: *const u32, seed_length: c_uint)4083     pub fn g_rand_set_seed_array(rand_: *mut GRand, seed: *const u32, seed_length: c_uint);
g_rand_new() -> *mut GRand4084     pub fn g_rand_new() -> *mut GRand;
g_rand_new_with_seed(seed: u32) -> *mut GRand4085     pub fn g_rand_new_with_seed(seed: u32) -> *mut GRand;
g_rand_new_with_seed_array(seed: *const u32, seed_length: c_uint) -> *mut GRand4086     pub fn g_rand_new_with_seed_array(seed: *const u32, seed_length: c_uint) -> *mut GRand;
4087 
4088     //=========================================================================
4089     // GRecMutex
4090     //=========================================================================
g_rec_mutex_clear(rec_mutex: *mut GRecMutex)4091     pub fn g_rec_mutex_clear(rec_mutex: *mut GRecMutex);
g_rec_mutex_init(rec_mutex: *mut GRecMutex)4092     pub fn g_rec_mutex_init(rec_mutex: *mut GRecMutex);
g_rec_mutex_lock(rec_mutex: *mut GRecMutex)4093     pub fn g_rec_mutex_lock(rec_mutex: *mut GRecMutex);
g_rec_mutex_trylock(rec_mutex: *mut GRecMutex) -> gboolean4094     pub fn g_rec_mutex_trylock(rec_mutex: *mut GRecMutex) -> gboolean;
g_rec_mutex_unlock(rec_mutex: *mut GRecMutex)4095     pub fn g_rec_mutex_unlock(rec_mutex: *mut GRecMutex);
4096 
4097     //=========================================================================
4098     // GRegex
4099     //=========================================================================
g_regex_get_type() -> GType4100     pub fn g_regex_get_type() -> GType;
g_regex_new( pattern: *const c_char, compile_options: GRegexCompileFlags, match_options: GRegexMatchFlags, error: *mut *mut GError, ) -> *mut GRegex4101     pub fn g_regex_new(
4102         pattern: *const c_char,
4103         compile_options: GRegexCompileFlags,
4104         match_options: GRegexMatchFlags,
4105         error: *mut *mut GError,
4106     ) -> *mut GRegex;
g_regex_get_capture_count(regex: *const GRegex) -> c_int4107     pub fn g_regex_get_capture_count(regex: *const GRegex) -> c_int;
g_regex_get_compile_flags(regex: *const GRegex) -> GRegexCompileFlags4108     pub fn g_regex_get_compile_flags(regex: *const GRegex) -> GRegexCompileFlags;
g_regex_get_has_cr_or_lf(regex: *const GRegex) -> gboolean4109     pub fn g_regex_get_has_cr_or_lf(regex: *const GRegex) -> gboolean;
g_regex_get_match_flags(regex: *const GRegex) -> GRegexMatchFlags4110     pub fn g_regex_get_match_flags(regex: *const GRegex) -> GRegexMatchFlags;
g_regex_get_max_backref(regex: *const GRegex) -> c_int4111     pub fn g_regex_get_max_backref(regex: *const GRegex) -> c_int;
g_regex_get_max_lookbehind(regex: *const GRegex) -> c_int4112     pub fn g_regex_get_max_lookbehind(regex: *const GRegex) -> c_int;
g_regex_get_pattern(regex: *const GRegex) -> *const c_char4113     pub fn g_regex_get_pattern(regex: *const GRegex) -> *const c_char;
g_regex_get_string_number(regex: *const GRegex, name: *const c_char) -> c_int4114     pub fn g_regex_get_string_number(regex: *const GRegex, name: *const c_char) -> c_int;
g_regex_match( regex: *const GRegex, string: *const c_char, match_options: GRegexMatchFlags, match_info: *mut *mut GMatchInfo, ) -> gboolean4115     pub fn g_regex_match(
4116         regex: *const GRegex,
4117         string: *const c_char,
4118         match_options: GRegexMatchFlags,
4119         match_info: *mut *mut GMatchInfo,
4120     ) -> gboolean;
g_regex_match_all( regex: *const GRegex, string: *const c_char, match_options: GRegexMatchFlags, match_info: *mut *mut GMatchInfo, ) -> gboolean4121     pub fn g_regex_match_all(
4122         regex: *const GRegex,
4123         string: *const c_char,
4124         match_options: GRegexMatchFlags,
4125         match_info: *mut *mut GMatchInfo,
4126     ) -> gboolean;
g_regex_match_all_full( regex: *const GRegex, string: *const c_char, string_len: ssize_t, start_position: c_int, match_options: GRegexMatchFlags, match_info: *mut *mut GMatchInfo, error: *mut *mut GError, ) -> gboolean4127     pub fn g_regex_match_all_full(
4128         regex: *const GRegex,
4129         string: *const c_char,
4130         string_len: ssize_t,
4131         start_position: c_int,
4132         match_options: GRegexMatchFlags,
4133         match_info: *mut *mut GMatchInfo,
4134         error: *mut *mut GError,
4135     ) -> gboolean;
g_regex_match_full( regex: *const GRegex, string: *const c_char, string_len: ssize_t, start_position: c_int, match_options: GRegexMatchFlags, match_info: *mut *mut GMatchInfo, error: *mut *mut GError, ) -> gboolean4136     pub fn g_regex_match_full(
4137         regex: *const GRegex,
4138         string: *const c_char,
4139         string_len: ssize_t,
4140         start_position: c_int,
4141         match_options: GRegexMatchFlags,
4142         match_info: *mut *mut GMatchInfo,
4143         error: *mut *mut GError,
4144     ) -> gboolean;
g_regex_ref(regex: *mut GRegex) -> *mut GRegex4145     pub fn g_regex_ref(regex: *mut GRegex) -> *mut GRegex;
g_regex_replace( regex: *const GRegex, string: *const c_char, string_len: ssize_t, start_position: c_int, replacement: *const c_char, match_options: GRegexMatchFlags, error: *mut *mut GError, ) -> *mut c_char4146     pub fn g_regex_replace(
4147         regex: *const GRegex,
4148         string: *const c_char,
4149         string_len: ssize_t,
4150         start_position: c_int,
4151         replacement: *const c_char,
4152         match_options: GRegexMatchFlags,
4153         error: *mut *mut GError,
4154     ) -> *mut c_char;
g_regex_replace_eval( regex: *const GRegex, string: *const c_char, string_len: ssize_t, start_position: c_int, match_options: GRegexMatchFlags, eval: GRegexEvalCallback, user_data: gpointer, error: *mut *mut GError, ) -> *mut c_char4155     pub fn g_regex_replace_eval(
4156         regex: *const GRegex,
4157         string: *const c_char,
4158         string_len: ssize_t,
4159         start_position: c_int,
4160         match_options: GRegexMatchFlags,
4161         eval: GRegexEvalCallback,
4162         user_data: gpointer,
4163         error: *mut *mut GError,
4164     ) -> *mut c_char;
g_regex_replace_literal( regex: *const GRegex, string: *const c_char, string_len: ssize_t, start_position: c_int, replacement: *const c_char, match_options: GRegexMatchFlags, error: *mut *mut GError, ) -> *mut c_char4165     pub fn g_regex_replace_literal(
4166         regex: *const GRegex,
4167         string: *const c_char,
4168         string_len: ssize_t,
4169         start_position: c_int,
4170         replacement: *const c_char,
4171         match_options: GRegexMatchFlags,
4172         error: *mut *mut GError,
4173     ) -> *mut c_char;
g_regex_split( regex: *const GRegex, string: *const c_char, match_options: GRegexMatchFlags, ) -> *mut *mut c_char4174     pub fn g_regex_split(
4175         regex: *const GRegex,
4176         string: *const c_char,
4177         match_options: GRegexMatchFlags,
4178     ) -> *mut *mut c_char;
g_regex_split_full( regex: *const GRegex, string: *const c_char, string_len: ssize_t, start_position: c_int, match_options: GRegexMatchFlags, max_tokens: c_int, error: *mut *mut GError, ) -> *mut *mut c_char4179     pub fn g_regex_split_full(
4180         regex: *const GRegex,
4181         string: *const c_char,
4182         string_len: ssize_t,
4183         start_position: c_int,
4184         match_options: GRegexMatchFlags,
4185         max_tokens: c_int,
4186         error: *mut *mut GError,
4187     ) -> *mut *mut c_char;
g_regex_unref(regex: *mut GRegex)4188     pub fn g_regex_unref(regex: *mut GRegex);
g_regex_check_replacement( replacement: *const c_char, has_references: *mut gboolean, error: *mut *mut GError, ) -> gboolean4189     pub fn g_regex_check_replacement(
4190         replacement: *const c_char,
4191         has_references: *mut gboolean,
4192         error: *mut *mut GError,
4193     ) -> gboolean;
g_regex_error_quark() -> GQuark4194     pub fn g_regex_error_quark() -> GQuark;
g_regex_escape_nul(string: *const c_char, length: c_int) -> *mut c_char4195     pub fn g_regex_escape_nul(string: *const c_char, length: c_int) -> *mut c_char;
g_regex_escape_string(string: *const c_char, length: c_int) -> *mut c_char4196     pub fn g_regex_escape_string(string: *const c_char, length: c_int) -> *mut c_char;
g_regex_match_simple( pattern: *const c_char, string: *const c_char, compile_options: GRegexCompileFlags, match_options: GRegexMatchFlags, ) -> gboolean4197     pub fn g_regex_match_simple(
4198         pattern: *const c_char,
4199         string: *const c_char,
4200         compile_options: GRegexCompileFlags,
4201         match_options: GRegexMatchFlags,
4202     ) -> gboolean;
g_regex_split_simple( pattern: *const c_char, string: *const c_char, compile_options: GRegexCompileFlags, match_options: GRegexMatchFlags, ) -> *mut *mut c_char4203     pub fn g_regex_split_simple(
4204         pattern: *const c_char,
4205         string: *const c_char,
4206         compile_options: GRegexCompileFlags,
4207         match_options: GRegexMatchFlags,
4208     ) -> *mut *mut c_char;
4209 
4210     //=========================================================================
4211     // GSList
4212     //=========================================================================
g_slist_alloc() -> *mut GSList4213     pub fn g_slist_alloc() -> *mut GSList;
g_slist_append(list: *mut GSList, data: gpointer) -> *mut GSList4214     pub fn g_slist_append(list: *mut GSList, data: gpointer) -> *mut GSList;
g_slist_concat(list1: *mut GSList, list2: *mut GSList) -> *mut GSList4215     pub fn g_slist_concat(list1: *mut GSList, list2: *mut GSList) -> *mut GSList;
g_slist_copy(list: *mut GSList) -> *mut GSList4216     pub fn g_slist_copy(list: *mut GSList) -> *mut GSList;
g_slist_copy_deep( list: *mut GSList, func: GCopyFunc, user_data: gpointer, ) -> *mut GSList4217     pub fn g_slist_copy_deep(
4218         list: *mut GSList,
4219         func: GCopyFunc,
4220         user_data: gpointer,
4221     ) -> *mut GSList;
g_slist_delete_link(list: *mut GSList, link_: *mut GSList) -> *mut GSList4222     pub fn g_slist_delete_link(list: *mut GSList, link_: *mut GSList) -> *mut GSList;
g_slist_find(list: *mut GSList, data: gconstpointer) -> *mut GSList4223     pub fn g_slist_find(list: *mut GSList, data: gconstpointer) -> *mut GSList;
g_slist_find_custom( list: *mut GSList, data: gconstpointer, func: GCompareFunc, ) -> *mut GSList4224     pub fn g_slist_find_custom(
4225         list: *mut GSList,
4226         data: gconstpointer,
4227         func: GCompareFunc,
4228     ) -> *mut GSList;
g_slist_foreach(list: *mut GSList, func: GFunc, user_data: gpointer)4229     pub fn g_slist_foreach(list: *mut GSList, func: GFunc, user_data: gpointer);
g_slist_free(list: *mut GSList)4230     pub fn g_slist_free(list: *mut GSList);
g_slist_free_1(list: *mut GSList)4231     pub fn g_slist_free_1(list: *mut GSList);
g_slist_free_full(list: *mut GSList, free_func: GDestroyNotify)4232     pub fn g_slist_free_full(list: *mut GSList, free_func: GDestroyNotify);
g_slist_index(list: *mut GSList, data: gconstpointer) -> c_int4233     pub fn g_slist_index(list: *mut GSList, data: gconstpointer) -> c_int;
g_slist_insert(list: *mut GSList, data: gpointer, position: c_int) -> *mut GSList4234     pub fn g_slist_insert(list: *mut GSList, data: gpointer, position: c_int) -> *mut GSList;
g_slist_insert_before( slist: *mut GSList, sibling: *mut GSList, data: gpointer, ) -> *mut GSList4235     pub fn g_slist_insert_before(
4236         slist: *mut GSList,
4237         sibling: *mut GSList,
4238         data: gpointer,
4239     ) -> *mut GSList;
g_slist_insert_sorted( list: *mut GSList, data: gpointer, func: GCompareFunc, ) -> *mut GSList4240     pub fn g_slist_insert_sorted(
4241         list: *mut GSList,
4242         data: gpointer,
4243         func: GCompareFunc,
4244     ) -> *mut GSList;
g_slist_insert_sorted_with_data( list: *mut GSList, data: gpointer, func: GCompareDataFunc, user_data: gpointer, ) -> *mut GSList4245     pub fn g_slist_insert_sorted_with_data(
4246         list: *mut GSList,
4247         data: gpointer,
4248         func: GCompareDataFunc,
4249         user_data: gpointer,
4250     ) -> *mut GSList;
g_slist_last(list: *mut GSList) -> *mut GSList4251     pub fn g_slist_last(list: *mut GSList) -> *mut GSList;
g_slist_length(list: *mut GSList) -> c_uint4252     pub fn g_slist_length(list: *mut GSList) -> c_uint;
g_slist_nth(list: *mut GSList, n: c_uint) -> *mut GSList4253     pub fn g_slist_nth(list: *mut GSList, n: c_uint) -> *mut GSList;
g_slist_nth_data(list: *mut GSList, n: c_uint) -> gpointer4254     pub fn g_slist_nth_data(list: *mut GSList, n: c_uint) -> gpointer;
g_slist_position(list: *mut GSList, llink: *mut GSList) -> c_int4255     pub fn g_slist_position(list: *mut GSList, llink: *mut GSList) -> c_int;
g_slist_prepend(list: *mut GSList, data: gpointer) -> *mut GSList4256     pub fn g_slist_prepend(list: *mut GSList, data: gpointer) -> *mut GSList;
g_slist_remove(list: *mut GSList, data: gconstpointer) -> *mut GSList4257     pub fn g_slist_remove(list: *mut GSList, data: gconstpointer) -> *mut GSList;
g_slist_remove_all(list: *mut GSList, data: gconstpointer) -> *mut GSList4258     pub fn g_slist_remove_all(list: *mut GSList, data: gconstpointer) -> *mut GSList;
g_slist_remove_link(list: *mut GSList, link_: *mut GSList) -> *mut GSList4259     pub fn g_slist_remove_link(list: *mut GSList, link_: *mut GSList) -> *mut GSList;
g_slist_reverse(list: *mut GSList) -> *mut GSList4260     pub fn g_slist_reverse(list: *mut GSList) -> *mut GSList;
g_slist_sort(list: *mut GSList, compare_func: GCompareFunc) -> *mut GSList4261     pub fn g_slist_sort(list: *mut GSList, compare_func: GCompareFunc) -> *mut GSList;
g_slist_sort_with_data( list: *mut GSList, compare_func: GCompareDataFunc, user_data: gpointer, ) -> *mut GSList4262     pub fn g_slist_sort_with_data(
4263         list: *mut GSList,
4264         compare_func: GCompareDataFunc,
4265         user_data: gpointer,
4266     ) -> *mut GSList;
4267 
4268     //=========================================================================
4269     // GScanner
4270     //=========================================================================
g_scanner_cur_line(scanner: *mut GScanner) -> c_uint4271     pub fn g_scanner_cur_line(scanner: *mut GScanner) -> c_uint;
g_scanner_cur_position(scanner: *mut GScanner) -> c_uint4272     pub fn g_scanner_cur_position(scanner: *mut GScanner) -> c_uint;
g_scanner_cur_token(scanner: *mut GScanner) -> GTokenType4273     pub fn g_scanner_cur_token(scanner: *mut GScanner) -> GTokenType;
g_scanner_cur_value(scanner: *mut GScanner) -> GTokenValue4274     pub fn g_scanner_cur_value(scanner: *mut GScanner) -> GTokenValue;
g_scanner_destroy(scanner: *mut GScanner)4275     pub fn g_scanner_destroy(scanner: *mut GScanner);
g_scanner_eof(scanner: *mut GScanner) -> gboolean4276     pub fn g_scanner_eof(scanner: *mut GScanner) -> gboolean;
g_scanner_error(scanner: *mut GScanner, format: *const c_char, ...)4277     pub fn g_scanner_error(scanner: *mut GScanner, format: *const c_char, ...);
g_scanner_get_next_token(scanner: *mut GScanner) -> GTokenType4278     pub fn g_scanner_get_next_token(scanner: *mut GScanner) -> GTokenType;
g_scanner_input_file(scanner: *mut GScanner, input_fd: c_int)4279     pub fn g_scanner_input_file(scanner: *mut GScanner, input_fd: c_int);
g_scanner_input_text(scanner: *mut GScanner, text: *const c_char, text_len: c_uint)4280     pub fn g_scanner_input_text(scanner: *mut GScanner, text: *const c_char, text_len: c_uint);
g_scanner_lookup_symbol(scanner: *mut GScanner, symbol: *const c_char) -> gpointer4281     pub fn g_scanner_lookup_symbol(scanner: *mut GScanner, symbol: *const c_char) -> gpointer;
g_scanner_peek_next_token(scanner: *mut GScanner) -> GTokenType4282     pub fn g_scanner_peek_next_token(scanner: *mut GScanner) -> GTokenType;
g_scanner_scope_add_symbol( scanner: *mut GScanner, scope_id: c_uint, symbol: *const c_char, value: gpointer, )4283     pub fn g_scanner_scope_add_symbol(
4284         scanner: *mut GScanner,
4285         scope_id: c_uint,
4286         symbol: *const c_char,
4287         value: gpointer,
4288     );
g_scanner_scope_foreach_symbol( scanner: *mut GScanner, scope_id: c_uint, func: GHFunc, user_data: gpointer, )4289     pub fn g_scanner_scope_foreach_symbol(
4290         scanner: *mut GScanner,
4291         scope_id: c_uint,
4292         func: GHFunc,
4293         user_data: gpointer,
4294     );
g_scanner_scope_lookup_symbol( scanner: *mut GScanner, scope_id: c_uint, symbol: *const c_char, ) -> gpointer4295     pub fn g_scanner_scope_lookup_symbol(
4296         scanner: *mut GScanner,
4297         scope_id: c_uint,
4298         symbol: *const c_char,
4299     ) -> gpointer;
g_scanner_scope_remove_symbol( scanner: *mut GScanner, scope_id: c_uint, symbol: *const c_char, )4300     pub fn g_scanner_scope_remove_symbol(
4301         scanner: *mut GScanner,
4302         scope_id: c_uint,
4303         symbol: *const c_char,
4304     );
g_scanner_set_scope(scanner: *mut GScanner, scope_id: c_uint) -> c_uint4305     pub fn g_scanner_set_scope(scanner: *mut GScanner, scope_id: c_uint) -> c_uint;
g_scanner_sync_file_offset(scanner: *mut GScanner)4306     pub fn g_scanner_sync_file_offset(scanner: *mut GScanner);
g_scanner_unexp_token( scanner: *mut GScanner, expected_token: GTokenType, identifier_spec: *const c_char, symbol_spec: *const c_char, symbol_name: *const c_char, message: *const c_char, is_error: c_int, )4307     pub fn g_scanner_unexp_token(
4308         scanner: *mut GScanner,
4309         expected_token: GTokenType,
4310         identifier_spec: *const c_char,
4311         symbol_spec: *const c_char,
4312         symbol_name: *const c_char,
4313         message: *const c_char,
4314         is_error: c_int,
4315     );
g_scanner_warn(scanner: *mut GScanner, format: *const c_char, ...)4316     pub fn g_scanner_warn(scanner: *mut GScanner, format: *const c_char, ...);
g_scanner_new(config_templ: *const GScannerConfig) -> *mut GScanner4317     pub fn g_scanner_new(config_templ: *const GScannerConfig) -> *mut GScanner;
4318 
4319     //=========================================================================
4320     // GSequence
4321     //=========================================================================
g_sequence_append(seq: *mut GSequence, data: gpointer) -> *mut GSequenceIter4322     pub fn g_sequence_append(seq: *mut GSequence, data: gpointer) -> *mut GSequenceIter;
g_sequence_foreach(seq: *mut GSequence, func: GFunc, user_data: gpointer)4323     pub fn g_sequence_foreach(seq: *mut GSequence, func: GFunc, user_data: gpointer);
g_sequence_free(seq: *mut GSequence)4324     pub fn g_sequence_free(seq: *mut GSequence);
g_sequence_get_begin_iter(seq: *mut GSequence) -> *mut GSequenceIter4325     pub fn g_sequence_get_begin_iter(seq: *mut GSequence) -> *mut GSequenceIter;
g_sequence_get_end_iter(seq: *mut GSequence) -> *mut GSequenceIter4326     pub fn g_sequence_get_end_iter(seq: *mut GSequence) -> *mut GSequenceIter;
g_sequence_get_iter_at_pos(seq: *mut GSequence, pos: c_int) -> *mut GSequenceIter4327     pub fn g_sequence_get_iter_at_pos(seq: *mut GSequence, pos: c_int) -> *mut GSequenceIter;
g_sequence_get_length(seq: *mut GSequence) -> c_int4328     pub fn g_sequence_get_length(seq: *mut GSequence) -> c_int;
g_sequence_insert_sorted( seq: *mut GSequence, data: gpointer, cmp_func: GCompareDataFunc, cmp_data: gpointer, ) -> *mut GSequenceIter4329     pub fn g_sequence_insert_sorted(
4330         seq: *mut GSequence,
4331         data: gpointer,
4332         cmp_func: GCompareDataFunc,
4333         cmp_data: gpointer,
4334     ) -> *mut GSequenceIter;
g_sequence_insert_sorted_iter( seq: *mut GSequence, data: gpointer, iter_cmp: GSequenceIterCompareFunc, cmp_data: gpointer, ) -> *mut GSequenceIter4335     pub fn g_sequence_insert_sorted_iter(
4336         seq: *mut GSequence,
4337         data: gpointer,
4338         iter_cmp: GSequenceIterCompareFunc,
4339         cmp_data: gpointer,
4340     ) -> *mut GSequenceIter;
g_sequence_is_empty(seq: *mut GSequence) -> gboolean4341     pub fn g_sequence_is_empty(seq: *mut GSequence) -> gboolean;
g_sequence_lookup( seq: *mut GSequence, data: gpointer, cmp_func: GCompareDataFunc, cmp_data: gpointer, ) -> *mut GSequenceIter4342     pub fn g_sequence_lookup(
4343         seq: *mut GSequence,
4344         data: gpointer,
4345         cmp_func: GCompareDataFunc,
4346         cmp_data: gpointer,
4347     ) -> *mut GSequenceIter;
g_sequence_lookup_iter( seq: *mut GSequence, data: gpointer, iter_cmp: GSequenceIterCompareFunc, cmp_data: gpointer, ) -> *mut GSequenceIter4348     pub fn g_sequence_lookup_iter(
4349         seq: *mut GSequence,
4350         data: gpointer,
4351         iter_cmp: GSequenceIterCompareFunc,
4352         cmp_data: gpointer,
4353     ) -> *mut GSequenceIter;
g_sequence_prepend(seq: *mut GSequence, data: gpointer) -> *mut GSequenceIter4354     pub fn g_sequence_prepend(seq: *mut GSequence, data: gpointer) -> *mut GSequenceIter;
g_sequence_search( seq: *mut GSequence, data: gpointer, cmp_func: GCompareDataFunc, cmp_data: gpointer, ) -> *mut GSequenceIter4355     pub fn g_sequence_search(
4356         seq: *mut GSequence,
4357         data: gpointer,
4358         cmp_func: GCompareDataFunc,
4359         cmp_data: gpointer,
4360     ) -> *mut GSequenceIter;
g_sequence_search_iter( seq: *mut GSequence, data: gpointer, iter_cmp: GSequenceIterCompareFunc, cmp_data: gpointer, ) -> *mut GSequenceIter4361     pub fn g_sequence_search_iter(
4362         seq: *mut GSequence,
4363         data: gpointer,
4364         iter_cmp: GSequenceIterCompareFunc,
4365         cmp_data: gpointer,
4366     ) -> *mut GSequenceIter;
g_sequence_sort(seq: *mut GSequence, cmp_func: GCompareDataFunc, cmp_data: gpointer)4367     pub fn g_sequence_sort(seq: *mut GSequence, cmp_func: GCompareDataFunc, cmp_data: gpointer);
g_sequence_sort_iter( seq: *mut GSequence, cmp_func: GSequenceIterCompareFunc, cmp_data: gpointer, )4368     pub fn g_sequence_sort_iter(
4369         seq: *mut GSequence,
4370         cmp_func: GSequenceIterCompareFunc,
4371         cmp_data: gpointer,
4372     );
g_sequence_foreach_range( begin: *mut GSequenceIter, end: *mut GSequenceIter, func: GFunc, user_data: gpointer, )4373     pub fn g_sequence_foreach_range(
4374         begin: *mut GSequenceIter,
4375         end: *mut GSequenceIter,
4376         func: GFunc,
4377         user_data: gpointer,
4378     );
g_sequence_get(iter: *mut GSequenceIter) -> gpointer4379     pub fn g_sequence_get(iter: *mut GSequenceIter) -> gpointer;
g_sequence_insert_before(iter: *mut GSequenceIter, data: gpointer) -> *mut GSequenceIter4380     pub fn g_sequence_insert_before(iter: *mut GSequenceIter, data: gpointer)
4381         -> *mut GSequenceIter;
g_sequence_move(src: *mut GSequenceIter, dest: *mut GSequenceIter)4382     pub fn g_sequence_move(src: *mut GSequenceIter, dest: *mut GSequenceIter);
g_sequence_move_range( dest: *mut GSequenceIter, begin: *mut GSequenceIter, end: *mut GSequenceIter, )4383     pub fn g_sequence_move_range(
4384         dest: *mut GSequenceIter,
4385         begin: *mut GSequenceIter,
4386         end: *mut GSequenceIter,
4387     );
g_sequence_new(data_destroy: GDestroyNotify) -> *mut GSequence4388     pub fn g_sequence_new(data_destroy: GDestroyNotify) -> *mut GSequence;
g_sequence_range_get_midpoint( begin: *mut GSequenceIter, end: *mut GSequenceIter, ) -> *mut GSequenceIter4389     pub fn g_sequence_range_get_midpoint(
4390         begin: *mut GSequenceIter,
4391         end: *mut GSequenceIter,
4392     ) -> *mut GSequenceIter;
g_sequence_remove(iter: *mut GSequenceIter)4393     pub fn g_sequence_remove(iter: *mut GSequenceIter);
g_sequence_remove_range(begin: *mut GSequenceIter, end: *mut GSequenceIter)4394     pub fn g_sequence_remove_range(begin: *mut GSequenceIter, end: *mut GSequenceIter);
g_sequence_set(iter: *mut GSequenceIter, data: gpointer)4395     pub fn g_sequence_set(iter: *mut GSequenceIter, data: gpointer);
g_sequence_sort_changed( iter: *mut GSequenceIter, cmp_func: GCompareDataFunc, cmp_data: gpointer, )4396     pub fn g_sequence_sort_changed(
4397         iter: *mut GSequenceIter,
4398         cmp_func: GCompareDataFunc,
4399         cmp_data: gpointer,
4400     );
g_sequence_sort_changed_iter( iter: *mut GSequenceIter, iter_cmp: GSequenceIterCompareFunc, cmp_data: gpointer, )4401     pub fn g_sequence_sort_changed_iter(
4402         iter: *mut GSequenceIter,
4403         iter_cmp: GSequenceIterCompareFunc,
4404         cmp_data: gpointer,
4405     );
g_sequence_swap(a: *mut GSequenceIter, b: *mut GSequenceIter)4406     pub fn g_sequence_swap(a: *mut GSequenceIter, b: *mut GSequenceIter);
4407 
4408     //=========================================================================
4409     // GSequenceIter
4410     //=========================================================================
g_sequence_iter_compare(a: *mut GSequenceIter, b: *mut GSequenceIter) -> c_int4411     pub fn g_sequence_iter_compare(a: *mut GSequenceIter, b: *mut GSequenceIter) -> c_int;
g_sequence_iter_get_position(iter: *mut GSequenceIter) -> c_int4412     pub fn g_sequence_iter_get_position(iter: *mut GSequenceIter) -> c_int;
g_sequence_iter_get_sequence(iter: *mut GSequenceIter) -> *mut GSequence4413     pub fn g_sequence_iter_get_sequence(iter: *mut GSequenceIter) -> *mut GSequence;
g_sequence_iter_is_begin(iter: *mut GSequenceIter) -> gboolean4414     pub fn g_sequence_iter_is_begin(iter: *mut GSequenceIter) -> gboolean;
g_sequence_iter_is_end(iter: *mut GSequenceIter) -> gboolean4415     pub fn g_sequence_iter_is_end(iter: *mut GSequenceIter) -> gboolean;
g_sequence_iter_move(iter: *mut GSequenceIter, delta: c_int) -> *mut GSequenceIter4416     pub fn g_sequence_iter_move(iter: *mut GSequenceIter, delta: c_int) -> *mut GSequenceIter;
g_sequence_iter_next(iter: *mut GSequenceIter) -> *mut GSequenceIter4417     pub fn g_sequence_iter_next(iter: *mut GSequenceIter) -> *mut GSequenceIter;
g_sequence_iter_prev(iter: *mut GSequenceIter) -> *mut GSequenceIter4418     pub fn g_sequence_iter_prev(iter: *mut GSequenceIter) -> *mut GSequenceIter;
4419 
4420     //=========================================================================
4421     // GSource
4422     //=========================================================================
g_source_get_type() -> GType4423     pub fn g_source_get_type() -> GType;
g_source_new(source_funcs: *mut GSourceFuncs, struct_size: c_uint) -> *mut GSource4424     pub fn g_source_new(source_funcs: *mut GSourceFuncs, struct_size: c_uint) -> *mut GSource;
g_source_add_child_source(source: *mut GSource, child_source: *mut GSource)4425     pub fn g_source_add_child_source(source: *mut GSource, child_source: *mut GSource);
g_source_add_poll(source: *mut GSource, fd: *mut GPollFD)4426     pub fn g_source_add_poll(source: *mut GSource, fd: *mut GPollFD);
g_source_add_unix_fd(source: *mut GSource, fd: c_int, events: GIOCondition) -> gpointer4427     pub fn g_source_add_unix_fd(source: *mut GSource, fd: c_int, events: GIOCondition) -> gpointer;
g_source_attach(source: *mut GSource, context: *mut GMainContext) -> c_uint4428     pub fn g_source_attach(source: *mut GSource, context: *mut GMainContext) -> c_uint;
g_source_destroy(source: *mut GSource)4429     pub fn g_source_destroy(source: *mut GSource);
g_source_get_can_recurse(source: *mut GSource) -> gboolean4430     pub fn g_source_get_can_recurse(source: *mut GSource) -> gboolean;
g_source_get_context(source: *mut GSource) -> *mut GMainContext4431     pub fn g_source_get_context(source: *mut GSource) -> *mut GMainContext;
g_source_get_current_time(source: *mut GSource, timeval: *mut GTimeVal)4432     pub fn g_source_get_current_time(source: *mut GSource, timeval: *mut GTimeVal);
g_source_get_id(source: *mut GSource) -> c_uint4433     pub fn g_source_get_id(source: *mut GSource) -> c_uint;
g_source_get_name(source: *mut GSource) -> *const c_char4434     pub fn g_source_get_name(source: *mut GSource) -> *const c_char;
g_source_get_priority(source: *mut GSource) -> c_int4435     pub fn g_source_get_priority(source: *mut GSource) -> c_int;
g_source_get_ready_time(source: *mut GSource) -> i644436     pub fn g_source_get_ready_time(source: *mut GSource) -> i64;
g_source_get_time(source: *mut GSource) -> i644437     pub fn g_source_get_time(source: *mut GSource) -> i64;
g_source_is_destroyed(source: *mut GSource) -> gboolean4438     pub fn g_source_is_destroyed(source: *mut GSource) -> gboolean;
g_source_modify_unix_fd(source: *mut GSource, tag: gpointer, new_events: GIOCondition)4439     pub fn g_source_modify_unix_fd(source: *mut GSource, tag: gpointer, new_events: GIOCondition);
g_source_query_unix_fd(source: *mut GSource, tag: gpointer) -> GIOCondition4440     pub fn g_source_query_unix_fd(source: *mut GSource, tag: gpointer) -> GIOCondition;
g_source_ref(source: *mut GSource) -> *mut GSource4441     pub fn g_source_ref(source: *mut GSource) -> *mut GSource;
g_source_remove_child_source(source: *mut GSource, child_source: *mut GSource)4442     pub fn g_source_remove_child_source(source: *mut GSource, child_source: *mut GSource);
g_source_remove_poll(source: *mut GSource, fd: *mut GPollFD)4443     pub fn g_source_remove_poll(source: *mut GSource, fd: *mut GPollFD);
g_source_remove_unix_fd(source: *mut GSource, tag: gpointer)4444     pub fn g_source_remove_unix_fd(source: *mut GSource, tag: gpointer);
g_source_set_callback( source: *mut GSource, func: GSourceFunc, data: gpointer, notify: GDestroyNotify, )4445     pub fn g_source_set_callback(
4446         source: *mut GSource,
4447         func: GSourceFunc,
4448         data: gpointer,
4449         notify: GDestroyNotify,
4450     );
g_source_set_callback_indirect( source: *mut GSource, callback_data: gpointer, callback_funcs: *mut GSourceCallbackFuncs, )4451     pub fn g_source_set_callback_indirect(
4452         source: *mut GSource,
4453         callback_data: gpointer,
4454         callback_funcs: *mut GSourceCallbackFuncs,
4455     );
g_source_set_can_recurse(source: *mut GSource, can_recurse: gboolean)4456     pub fn g_source_set_can_recurse(source: *mut GSource, can_recurse: gboolean);
4457     #[cfg(any(feature = "v2_64", feature = "dox"))]
4458     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_64")))]
g_source_set_dispose_function(source: *mut GSource, dispose: GSourceDisposeFunc)4459     pub fn g_source_set_dispose_function(source: *mut GSource, dispose: GSourceDisposeFunc);
g_source_set_funcs(source: *mut GSource, funcs: *mut GSourceFuncs)4460     pub fn g_source_set_funcs(source: *mut GSource, funcs: *mut GSourceFuncs);
g_source_set_name(source: *mut GSource, name: *const c_char)4461     pub fn g_source_set_name(source: *mut GSource, name: *const c_char);
g_source_set_priority(source: *mut GSource, priority: c_int)4462     pub fn g_source_set_priority(source: *mut GSource, priority: c_int);
g_source_set_ready_time(source: *mut GSource, ready_time: i64)4463     pub fn g_source_set_ready_time(source: *mut GSource, ready_time: i64);
g_source_unref(source: *mut GSource)4464     pub fn g_source_unref(source: *mut GSource);
g_source_remove(tag: c_uint) -> gboolean4465     pub fn g_source_remove(tag: c_uint) -> gboolean;
g_source_remove_by_funcs_user_data( funcs: *mut GSourceFuncs, user_data: gpointer, ) -> gboolean4466     pub fn g_source_remove_by_funcs_user_data(
4467         funcs: *mut GSourceFuncs,
4468         user_data: gpointer,
4469     ) -> gboolean;
g_source_remove_by_user_data(user_data: gpointer) -> gboolean4470     pub fn g_source_remove_by_user_data(user_data: gpointer) -> gboolean;
g_source_set_name_by_id(tag: c_uint, name: *const c_char)4471     pub fn g_source_set_name_by_id(tag: c_uint, name: *const c_char);
4472 
4473     //=========================================================================
4474     // GString
4475     //=========================================================================
g_gstring_get_type() -> GType4476     pub fn g_gstring_get_type() -> GType;
g_string_append(string: *mut GString, val: *const c_char) -> *mut GString4477     pub fn g_string_append(string: *mut GString, val: *const c_char) -> *mut GString;
g_string_append_c(string: *mut GString, c: c_char) -> *mut GString4478     pub fn g_string_append_c(string: *mut GString, c: c_char) -> *mut GString;
g_string_append_len( string: *mut GString, val: *const c_char, len: ssize_t, ) -> *mut GString4479     pub fn g_string_append_len(
4480         string: *mut GString,
4481         val: *const c_char,
4482         len: ssize_t,
4483     ) -> *mut GString;
g_string_append_printf(string: *mut GString, format: *const c_char, ...)4484     pub fn g_string_append_printf(string: *mut GString, format: *const c_char, ...);
g_string_append_unichar(string: *mut GString, wc: u32) -> *mut GString4485     pub fn g_string_append_unichar(string: *mut GString, wc: u32) -> *mut GString;
g_string_append_uri_escaped( string: *mut GString, unescaped: *const c_char, reserved_chars_allowed: *const c_char, allow_utf8: gboolean, ) -> *mut GString4486     pub fn g_string_append_uri_escaped(
4487         string: *mut GString,
4488         unescaped: *const c_char,
4489         reserved_chars_allowed: *const c_char,
4490         allow_utf8: gboolean,
4491     ) -> *mut GString;
4492     //pub fn g_string_append_vprintf(string: *mut GString, format: *const c_char, args: /*Unimplemented*/va_list);
g_string_ascii_down(string: *mut GString) -> *mut GString4493     pub fn g_string_ascii_down(string: *mut GString) -> *mut GString;
g_string_ascii_up(string: *mut GString) -> *mut GString4494     pub fn g_string_ascii_up(string: *mut GString) -> *mut GString;
g_string_assign(string: *mut GString, rval: *const c_char) -> *mut GString4495     pub fn g_string_assign(string: *mut GString, rval: *const c_char) -> *mut GString;
g_string_down(string: *mut GString) -> *mut GString4496     pub fn g_string_down(string: *mut GString) -> *mut GString;
g_string_equal(v: *const GString, v2: *const GString) -> gboolean4497     pub fn g_string_equal(v: *const GString, v2: *const GString) -> gboolean;
g_string_erase(string: *mut GString, pos: ssize_t, len: ssize_t) -> *mut GString4498     pub fn g_string_erase(string: *mut GString, pos: ssize_t, len: ssize_t) -> *mut GString;
g_string_free(string: *mut GString, free_segment: gboolean) -> *mut c_char4499     pub fn g_string_free(string: *mut GString, free_segment: gboolean) -> *mut c_char;
g_string_free_to_bytes(string: *mut GString) -> *mut GBytes4500     pub fn g_string_free_to_bytes(string: *mut GString) -> *mut GBytes;
g_string_hash(str: *const GString) -> c_uint4501     pub fn g_string_hash(str: *const GString) -> c_uint;
g_string_insert(string: *mut GString, pos: ssize_t, val: *const c_char) -> *mut GString4502     pub fn g_string_insert(string: *mut GString, pos: ssize_t, val: *const c_char) -> *mut GString;
g_string_insert_c(string: *mut GString, pos: ssize_t, c: c_char) -> *mut GString4503     pub fn g_string_insert_c(string: *mut GString, pos: ssize_t, c: c_char) -> *mut GString;
g_string_insert_len( string: *mut GString, pos: ssize_t, val: *const c_char, len: ssize_t, ) -> *mut GString4504     pub fn g_string_insert_len(
4505         string: *mut GString,
4506         pos: ssize_t,
4507         val: *const c_char,
4508         len: ssize_t,
4509     ) -> *mut GString;
g_string_insert_unichar(string: *mut GString, pos: ssize_t, wc: u32) -> *mut GString4510     pub fn g_string_insert_unichar(string: *mut GString, pos: ssize_t, wc: u32) -> *mut GString;
g_string_overwrite( string: *mut GString, pos: size_t, val: *const c_char, ) -> *mut GString4511     pub fn g_string_overwrite(
4512         string: *mut GString,
4513         pos: size_t,
4514         val: *const c_char,
4515     ) -> *mut GString;
g_string_overwrite_len( string: *mut GString, pos: size_t, val: *const c_char, len: ssize_t, ) -> *mut GString4516     pub fn g_string_overwrite_len(
4517         string: *mut GString,
4518         pos: size_t,
4519         val: *const c_char,
4520         len: ssize_t,
4521     ) -> *mut GString;
g_string_prepend(string: *mut GString, val: *const c_char) -> *mut GString4522     pub fn g_string_prepend(string: *mut GString, val: *const c_char) -> *mut GString;
g_string_prepend_c(string: *mut GString, c: c_char) -> *mut GString4523     pub fn g_string_prepend_c(string: *mut GString, c: c_char) -> *mut GString;
g_string_prepend_len( string: *mut GString, val: *const c_char, len: ssize_t, ) -> *mut GString4524     pub fn g_string_prepend_len(
4525         string: *mut GString,
4526         val: *const c_char,
4527         len: ssize_t,
4528     ) -> *mut GString;
g_string_prepend_unichar(string: *mut GString, wc: u32) -> *mut GString4529     pub fn g_string_prepend_unichar(string: *mut GString, wc: u32) -> *mut GString;
g_string_printf(string: *mut GString, format: *const c_char, ...)4530     pub fn g_string_printf(string: *mut GString, format: *const c_char, ...);
g_string_set_size(string: *mut GString, len: size_t) -> *mut GString4531     pub fn g_string_set_size(string: *mut GString, len: size_t) -> *mut GString;
g_string_truncate(string: *mut GString, len: size_t) -> *mut GString4532     pub fn g_string_truncate(string: *mut GString, len: size_t) -> *mut GString;
g_string_up(string: *mut GString) -> *mut GString4533     pub fn g_string_up(string: *mut GString) -> *mut GString;
4534     //pub fn g_string_vprintf(string: *mut GString, format: *const c_char, args: /*Unimplemented*/va_list);
4535 
4536     //=========================================================================
4537     // GStringChunk
4538     //=========================================================================
g_string_chunk_clear(chunk: *mut GStringChunk)4539     pub fn g_string_chunk_clear(chunk: *mut GStringChunk);
g_string_chunk_free(chunk: *mut GStringChunk)4540     pub fn g_string_chunk_free(chunk: *mut GStringChunk);
g_string_chunk_insert(chunk: *mut GStringChunk, string: *const c_char) -> *mut c_char4541     pub fn g_string_chunk_insert(chunk: *mut GStringChunk, string: *const c_char) -> *mut c_char;
g_string_chunk_insert_const( chunk: *mut GStringChunk, string: *const c_char, ) -> *mut c_char4542     pub fn g_string_chunk_insert_const(
4543         chunk: *mut GStringChunk,
4544         string: *const c_char,
4545     ) -> *mut c_char;
g_string_chunk_insert_len( chunk: *mut GStringChunk, string: *const c_char, len: ssize_t, ) -> *mut c_char4546     pub fn g_string_chunk_insert_len(
4547         chunk: *mut GStringChunk,
4548         string: *const c_char,
4549         len: ssize_t,
4550     ) -> *mut c_char;
g_string_chunk_new(size: size_t) -> *mut GStringChunk4551     pub fn g_string_chunk_new(size: size_t) -> *mut GStringChunk;
4552 
4553     //=========================================================================
4554     // GTestLogBuffer
4555     //=========================================================================
g_test_log_buffer_free(tbuffer: *mut GTestLogBuffer)4556     pub fn g_test_log_buffer_free(tbuffer: *mut GTestLogBuffer);
g_test_log_buffer_pop(tbuffer: *mut GTestLogBuffer) -> *mut GTestLogMsg4557     pub fn g_test_log_buffer_pop(tbuffer: *mut GTestLogBuffer) -> *mut GTestLogMsg;
g_test_log_buffer_push(tbuffer: *mut GTestLogBuffer, n_bytes: c_uint, bytes: *const u8)4558     pub fn g_test_log_buffer_push(tbuffer: *mut GTestLogBuffer, n_bytes: c_uint, bytes: *const u8);
g_test_log_buffer_new() -> *mut GTestLogBuffer4559     pub fn g_test_log_buffer_new() -> *mut GTestLogBuffer;
4560 
4561     //=========================================================================
4562     // GTestLogMsg
4563     //=========================================================================
g_test_log_msg_free(tmsg: *mut GTestLogMsg)4564     pub fn g_test_log_msg_free(tmsg: *mut GTestLogMsg);
4565 
4566     //=========================================================================
4567     // GTestSuite
4568     //=========================================================================
g_test_suite_add(suite: *mut GTestSuite, test_case: *mut GTestCase)4569     pub fn g_test_suite_add(suite: *mut GTestSuite, test_case: *mut GTestCase);
g_test_suite_add_suite(suite: *mut GTestSuite, nestedsuite: *mut GTestSuite)4570     pub fn g_test_suite_add_suite(suite: *mut GTestSuite, nestedsuite: *mut GTestSuite);
4571 
4572     //=========================================================================
4573     // GThread
4574     //=========================================================================
g_thread_get_type() -> GType4575     pub fn g_thread_get_type() -> GType;
g_thread_new(name: *const c_char, func: GThreadFunc, data: gpointer) -> *mut GThread4576     pub fn g_thread_new(name: *const c_char, func: GThreadFunc, data: gpointer) -> *mut GThread;
g_thread_try_new( name: *const c_char, func: GThreadFunc, data: gpointer, error: *mut *mut GError, ) -> *mut GThread4577     pub fn g_thread_try_new(
4578         name: *const c_char,
4579         func: GThreadFunc,
4580         data: gpointer,
4581         error: *mut *mut GError,
4582     ) -> *mut GThread;
g_thread_join(thread: *mut GThread) -> gpointer4583     pub fn g_thread_join(thread: *mut GThread) -> gpointer;
g_thread_ref(thread: *mut GThread) -> *mut GThread4584     pub fn g_thread_ref(thread: *mut GThread) -> *mut GThread;
g_thread_unref(thread: *mut GThread)4585     pub fn g_thread_unref(thread: *mut GThread);
g_thread_error_quark() -> GQuark4586     pub fn g_thread_error_quark() -> GQuark;
g_thread_exit(retval: gpointer)4587     pub fn g_thread_exit(retval: gpointer);
g_thread_self() -> *mut GThread4588     pub fn g_thread_self() -> *mut GThread;
g_thread_yield()4589     pub fn g_thread_yield();
4590 
4591     //=========================================================================
4592     // GThreadPool
4593     //=========================================================================
g_thread_pool_free(pool: *mut GThreadPool, immediate: gboolean, wait_: gboolean)4594     pub fn g_thread_pool_free(pool: *mut GThreadPool, immediate: gboolean, wait_: gboolean);
g_thread_pool_get_max_threads(pool: *mut GThreadPool) -> c_int4595     pub fn g_thread_pool_get_max_threads(pool: *mut GThreadPool) -> c_int;
g_thread_pool_get_num_threads(pool: *mut GThreadPool) -> c_uint4596     pub fn g_thread_pool_get_num_threads(pool: *mut GThreadPool) -> c_uint;
g_thread_pool_move_to_front(pool: *mut GThreadPool, data: gpointer) -> gboolean4597     pub fn g_thread_pool_move_to_front(pool: *mut GThreadPool, data: gpointer) -> gboolean;
g_thread_pool_push( pool: *mut GThreadPool, data: gpointer, error: *mut *mut GError, ) -> gboolean4598     pub fn g_thread_pool_push(
4599         pool: *mut GThreadPool,
4600         data: gpointer,
4601         error: *mut *mut GError,
4602     ) -> gboolean;
g_thread_pool_set_max_threads( pool: *mut GThreadPool, max_threads: c_int, error: *mut *mut GError, ) -> gboolean4603     pub fn g_thread_pool_set_max_threads(
4604         pool: *mut GThreadPool,
4605         max_threads: c_int,
4606         error: *mut *mut GError,
4607     ) -> gboolean;
g_thread_pool_set_sort_function( pool: *mut GThreadPool, func: GCompareDataFunc, user_data: gpointer, )4608     pub fn g_thread_pool_set_sort_function(
4609         pool: *mut GThreadPool,
4610         func: GCompareDataFunc,
4611         user_data: gpointer,
4612     );
g_thread_pool_unprocessed(pool: *mut GThreadPool) -> c_uint4613     pub fn g_thread_pool_unprocessed(pool: *mut GThreadPool) -> c_uint;
g_thread_pool_get_max_idle_time() -> c_uint4614     pub fn g_thread_pool_get_max_idle_time() -> c_uint;
g_thread_pool_get_max_unused_threads() -> c_int4615     pub fn g_thread_pool_get_max_unused_threads() -> c_int;
g_thread_pool_get_num_unused_threads() -> c_uint4616     pub fn g_thread_pool_get_num_unused_threads() -> c_uint;
g_thread_pool_new( func: GFunc, user_data: gpointer, max_threads: c_int, exclusive: gboolean, error: *mut *mut GError, ) -> *mut GThreadPool4617     pub fn g_thread_pool_new(
4618         func: GFunc,
4619         user_data: gpointer,
4620         max_threads: c_int,
4621         exclusive: gboolean,
4622         error: *mut *mut GError,
4623     ) -> *mut GThreadPool;
g_thread_pool_set_max_idle_time(interval: c_uint)4624     pub fn g_thread_pool_set_max_idle_time(interval: c_uint);
g_thread_pool_set_max_unused_threads(max_threads: c_int)4625     pub fn g_thread_pool_set_max_unused_threads(max_threads: c_int);
g_thread_pool_stop_unused_threads()4626     pub fn g_thread_pool_stop_unused_threads();
4627 
4628     //=========================================================================
4629     // GTimeVal
4630     //=========================================================================
g_time_val_add(time_: *mut GTimeVal, microseconds: c_long)4631     pub fn g_time_val_add(time_: *mut GTimeVal, microseconds: c_long);
g_time_val_to_iso8601(time_: *mut GTimeVal) -> *mut c_char4632     pub fn g_time_val_to_iso8601(time_: *mut GTimeVal) -> *mut c_char;
g_time_val_from_iso8601(iso_date: *const c_char, time_: *mut GTimeVal) -> gboolean4633     pub fn g_time_val_from_iso8601(iso_date: *const c_char, time_: *mut GTimeVal) -> gboolean;
4634 
4635     //=========================================================================
4636     // GTimeZone
4637     //=========================================================================
g_time_zone_get_type() -> GType4638     pub fn g_time_zone_get_type() -> GType;
g_time_zone_new(identifier: *const c_char) -> *mut GTimeZone4639     pub fn g_time_zone_new(identifier: *const c_char) -> *mut GTimeZone;
g_time_zone_new_local() -> *mut GTimeZone4640     pub fn g_time_zone_new_local() -> *mut GTimeZone;
4641     #[cfg(any(feature = "v2_58", feature = "dox"))]
4642     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_time_zone_new_offset(seconds: i32) -> *mut GTimeZone4643     pub fn g_time_zone_new_offset(seconds: i32) -> *mut GTimeZone;
g_time_zone_new_utc() -> *mut GTimeZone4644     pub fn g_time_zone_new_utc() -> *mut GTimeZone;
g_time_zone_adjust_time(tz: *mut GTimeZone, type_: GTimeType, time_: *mut i64) -> c_int4645     pub fn g_time_zone_adjust_time(tz: *mut GTimeZone, type_: GTimeType, time_: *mut i64) -> c_int;
g_time_zone_find_interval(tz: *mut GTimeZone, type_: GTimeType, time_: i64) -> c_int4646     pub fn g_time_zone_find_interval(tz: *mut GTimeZone, type_: GTimeType, time_: i64) -> c_int;
g_time_zone_get_abbreviation(tz: *mut GTimeZone, interval: c_int) -> *const c_char4647     pub fn g_time_zone_get_abbreviation(tz: *mut GTimeZone, interval: c_int) -> *const c_char;
4648     #[cfg(any(feature = "v2_58", feature = "dox"))]
4649     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_time_zone_get_identifier(tz: *mut GTimeZone) -> *const c_char4650     pub fn g_time_zone_get_identifier(tz: *mut GTimeZone) -> *const c_char;
g_time_zone_get_offset(tz: *mut GTimeZone, interval: c_int) -> i324651     pub fn g_time_zone_get_offset(tz: *mut GTimeZone, interval: c_int) -> i32;
g_time_zone_is_dst(tz: *mut GTimeZone, interval: c_int) -> gboolean4652     pub fn g_time_zone_is_dst(tz: *mut GTimeZone, interval: c_int) -> gboolean;
g_time_zone_ref(tz: *mut GTimeZone) -> *mut GTimeZone4653     pub fn g_time_zone_ref(tz: *mut GTimeZone) -> *mut GTimeZone;
g_time_zone_unref(tz: *mut GTimeZone)4654     pub fn g_time_zone_unref(tz: *mut GTimeZone);
4655 
4656     //=========================================================================
4657     // GTimer
4658     //=========================================================================
g_timer_continue(timer: *mut GTimer)4659     pub fn g_timer_continue(timer: *mut GTimer);
g_timer_destroy(timer: *mut GTimer)4660     pub fn g_timer_destroy(timer: *mut GTimer);
g_timer_elapsed(timer: *mut GTimer, microseconds: *mut c_ulong) -> c_double4661     pub fn g_timer_elapsed(timer: *mut GTimer, microseconds: *mut c_ulong) -> c_double;
4662     #[cfg(any(feature = "v2_62", feature = "dox"))]
4663     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_timer_is_active(timer: *mut GTimer) -> gboolean4664     pub fn g_timer_is_active(timer: *mut GTimer) -> gboolean;
g_timer_reset(timer: *mut GTimer)4665     pub fn g_timer_reset(timer: *mut GTimer);
g_timer_start(timer: *mut GTimer)4666     pub fn g_timer_start(timer: *mut GTimer);
g_timer_stop(timer: *mut GTimer)4667     pub fn g_timer_stop(timer: *mut GTimer);
g_timer_new() -> *mut GTimer4668     pub fn g_timer_new() -> *mut GTimer;
4669 
4670     //=========================================================================
4671     // GTrashStack
4672     //=========================================================================
g_trash_stack_height(stack_p: *mut *mut GTrashStack) -> c_uint4673     pub fn g_trash_stack_height(stack_p: *mut *mut GTrashStack) -> c_uint;
g_trash_stack_peek(stack_p: *mut *mut GTrashStack) -> gpointer4674     pub fn g_trash_stack_peek(stack_p: *mut *mut GTrashStack) -> gpointer;
g_trash_stack_pop(stack_p: *mut *mut GTrashStack) -> gpointer4675     pub fn g_trash_stack_pop(stack_p: *mut *mut GTrashStack) -> gpointer;
g_trash_stack_push(stack_p: *mut *mut GTrashStack, data_p: gpointer)4676     pub fn g_trash_stack_push(stack_p: *mut *mut GTrashStack, data_p: gpointer);
4677 
4678     //=========================================================================
4679     // GTree
4680     //=========================================================================
g_tree_destroy(tree: *mut GTree)4681     pub fn g_tree_destroy(tree: *mut GTree);
g_tree_foreach(tree: *mut GTree, func: GTraverseFunc, user_data: gpointer)4682     pub fn g_tree_foreach(tree: *mut GTree, func: GTraverseFunc, user_data: gpointer);
g_tree_height(tree: *mut GTree) -> c_int4683     pub fn g_tree_height(tree: *mut GTree) -> c_int;
g_tree_insert(tree: *mut GTree, key: gpointer, value: gpointer)4684     pub fn g_tree_insert(tree: *mut GTree, key: gpointer, value: gpointer);
g_tree_lookup(tree: *mut GTree, key: gconstpointer) -> gpointer4685     pub fn g_tree_lookup(tree: *mut GTree, key: gconstpointer) -> gpointer;
g_tree_lookup_extended( tree: *mut GTree, lookup_key: gconstpointer, orig_key: *mut gpointer, value: *mut gpointer, ) -> gboolean4686     pub fn g_tree_lookup_extended(
4687         tree: *mut GTree,
4688         lookup_key: gconstpointer,
4689         orig_key: *mut gpointer,
4690         value: *mut gpointer,
4691     ) -> gboolean;
g_tree_nnodes(tree: *mut GTree) -> c_int4692     pub fn g_tree_nnodes(tree: *mut GTree) -> c_int;
g_tree_ref(tree: *mut GTree) -> *mut GTree4693     pub fn g_tree_ref(tree: *mut GTree) -> *mut GTree;
g_tree_remove(tree: *mut GTree, key: gconstpointer) -> gboolean4694     pub fn g_tree_remove(tree: *mut GTree, key: gconstpointer) -> gboolean;
g_tree_replace(tree: *mut GTree, key: gpointer, value: gpointer)4695     pub fn g_tree_replace(tree: *mut GTree, key: gpointer, value: gpointer);
g_tree_search( tree: *mut GTree, search_func: GCompareFunc, user_data: gconstpointer, ) -> gpointer4696     pub fn g_tree_search(
4697         tree: *mut GTree,
4698         search_func: GCompareFunc,
4699         user_data: gconstpointer,
4700     ) -> gpointer;
g_tree_steal(tree: *mut GTree, key: gconstpointer) -> gboolean4701     pub fn g_tree_steal(tree: *mut GTree, key: gconstpointer) -> gboolean;
g_tree_traverse( tree: *mut GTree, traverse_func: GTraverseFunc, traverse_type: GTraverseType, user_data: gpointer, )4702     pub fn g_tree_traverse(
4703         tree: *mut GTree,
4704         traverse_func: GTraverseFunc,
4705         traverse_type: GTraverseType,
4706         user_data: gpointer,
4707     );
g_tree_unref(tree: *mut GTree)4708     pub fn g_tree_unref(tree: *mut GTree);
g_tree_new(key_compare_func: GCompareFunc) -> *mut GTree4709     pub fn g_tree_new(key_compare_func: GCompareFunc) -> *mut GTree;
g_tree_new_full( key_compare_func: GCompareDataFunc, key_compare_data: gpointer, key_destroy_func: GDestroyNotify, value_destroy_func: GDestroyNotify, ) -> *mut GTree4710     pub fn g_tree_new_full(
4711         key_compare_func: GCompareDataFunc,
4712         key_compare_data: gpointer,
4713         key_destroy_func: GDestroyNotify,
4714         value_destroy_func: GDestroyNotify,
4715     ) -> *mut GTree;
g_tree_new_with_data( key_compare_func: GCompareDataFunc, key_compare_data: gpointer, ) -> *mut GTree4716     pub fn g_tree_new_with_data(
4717         key_compare_func: GCompareDataFunc,
4718         key_compare_data: gpointer,
4719     ) -> *mut GTree;
4720 
4721     //=========================================================================
4722     // GUri
4723     //=========================================================================
4724     #[cfg(any(feature = "v2_66", feature = "dox"))]
4725     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_type() -> GType4726     pub fn g_uri_get_type() -> GType;
4727     #[cfg(any(feature = "v2_66", feature = "dox"))]
4728     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_auth_params(uri: *mut GUri) -> *const c_char4729     pub fn g_uri_get_auth_params(uri: *mut GUri) -> *const c_char;
4730     #[cfg(any(feature = "v2_66", feature = "dox"))]
4731     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_flags(uri: *mut GUri) -> GUriFlags4732     pub fn g_uri_get_flags(uri: *mut GUri) -> GUriFlags;
4733     #[cfg(any(feature = "v2_66", feature = "dox"))]
4734     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_fragment(uri: *mut GUri) -> *const c_char4735     pub fn g_uri_get_fragment(uri: *mut GUri) -> *const c_char;
4736     #[cfg(any(feature = "v2_66", feature = "dox"))]
4737     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_host(uri: *mut GUri) -> *const c_char4738     pub fn g_uri_get_host(uri: *mut GUri) -> *const c_char;
4739     #[cfg(any(feature = "v2_66", feature = "dox"))]
4740     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_password(uri: *mut GUri) -> *const c_char4741     pub fn g_uri_get_password(uri: *mut GUri) -> *const c_char;
4742     #[cfg(any(feature = "v2_66", feature = "dox"))]
4743     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_path(uri: *mut GUri) -> *const c_char4744     pub fn g_uri_get_path(uri: *mut GUri) -> *const c_char;
4745     #[cfg(any(feature = "v2_66", feature = "dox"))]
4746     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_port(uri: *mut GUri) -> c_int4747     pub fn g_uri_get_port(uri: *mut GUri) -> c_int;
4748     #[cfg(any(feature = "v2_66", feature = "dox"))]
4749     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_query(uri: *mut GUri) -> *const c_char4750     pub fn g_uri_get_query(uri: *mut GUri) -> *const c_char;
4751     #[cfg(any(feature = "v2_66", feature = "dox"))]
4752     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_scheme(uri: *mut GUri) -> *const c_char4753     pub fn g_uri_get_scheme(uri: *mut GUri) -> *const c_char;
4754     #[cfg(any(feature = "v2_66", feature = "dox"))]
4755     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_user(uri: *mut GUri) -> *const c_char4756     pub fn g_uri_get_user(uri: *mut GUri) -> *const c_char;
4757     #[cfg(any(feature = "v2_66", feature = "dox"))]
4758     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_get_userinfo(uri: *mut GUri) -> *const c_char4759     pub fn g_uri_get_userinfo(uri: *mut GUri) -> *const c_char;
4760     #[cfg(any(feature = "v2_66", feature = "dox"))]
4761     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_parse_relative( base_uri: *mut GUri, uri_ref: *const c_char, flags: GUriFlags, error: *mut *mut GError, ) -> *mut GUri4762     pub fn g_uri_parse_relative(
4763         base_uri: *mut GUri,
4764         uri_ref: *const c_char,
4765         flags: GUriFlags,
4766         error: *mut *mut GError,
4767     ) -> *mut GUri;
4768     #[cfg(any(feature = "v2_66", feature = "dox"))]
4769     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_ref(uri: *mut GUri) -> *mut GUri4770     pub fn g_uri_ref(uri: *mut GUri) -> *mut GUri;
4771     #[cfg(any(feature = "v2_66", feature = "dox"))]
4772     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_to_string(uri: *mut GUri) -> *mut c_char4773     pub fn g_uri_to_string(uri: *mut GUri) -> *mut c_char;
4774     #[cfg(any(feature = "v2_66", feature = "dox"))]
4775     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_to_string_partial(uri: *mut GUri, flags: GUriHideFlags) -> *mut c_char4776     pub fn g_uri_to_string_partial(uri: *mut GUri, flags: GUriHideFlags) -> *mut c_char;
4777     #[cfg(any(feature = "v2_66", feature = "dox"))]
4778     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_unref(uri: *mut GUri)4779     pub fn g_uri_unref(uri: *mut GUri);
4780     #[cfg(any(feature = "v2_66", feature = "dox"))]
4781     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_build( flags: GUriFlags, scheme: *const c_char, userinfo: *const c_char, host: *const c_char, port: c_int, path: *const c_char, query: *const c_char, fragment: *const c_char, ) -> *mut GUri4782     pub fn g_uri_build(
4783         flags: GUriFlags,
4784         scheme: *const c_char,
4785         userinfo: *const c_char,
4786         host: *const c_char,
4787         port: c_int,
4788         path: *const c_char,
4789         query: *const c_char,
4790         fragment: *const c_char,
4791     ) -> *mut GUri;
4792     #[cfg(any(feature = "v2_66", feature = "dox"))]
4793     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_build_with_user( flags: GUriFlags, scheme: *const c_char, user: *const c_char, password: *const c_char, auth_params: *const c_char, host: *const c_char, port: c_int, path: *const c_char, query: *const c_char, fragment: *const c_char, ) -> *mut GUri4794     pub fn g_uri_build_with_user(
4795         flags: GUriFlags,
4796         scheme: *const c_char,
4797         user: *const c_char,
4798         password: *const c_char,
4799         auth_params: *const c_char,
4800         host: *const c_char,
4801         port: c_int,
4802         path: *const c_char,
4803         query: *const c_char,
4804         fragment: *const c_char,
4805     ) -> *mut GUri;
4806     #[cfg(any(feature = "v2_66", feature = "dox"))]
4807     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_error_quark() -> GQuark4808     pub fn g_uri_error_quark() -> GQuark;
4809     #[cfg(any(feature = "v2_66", feature = "dox"))]
4810     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_escape_bytes( unescaped: *const u8, length: size_t, reserved_chars_allowed: *const c_char, ) -> *mut c_char4811     pub fn g_uri_escape_bytes(
4812         unescaped: *const u8,
4813         length: size_t,
4814         reserved_chars_allowed: *const c_char,
4815     ) -> *mut c_char;
g_uri_escape_string( unescaped: *const c_char, reserved_chars_allowed: *const c_char, allow_utf8: gboolean, ) -> *mut c_char4816     pub fn g_uri_escape_string(
4817         unescaped: *const c_char,
4818         reserved_chars_allowed: *const c_char,
4819         allow_utf8: gboolean,
4820     ) -> *mut c_char;
4821     #[cfg(any(feature = "v2_66", feature = "dox"))]
4822     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_is_valid( uri_string: *const c_char, flags: GUriFlags, error: *mut *mut GError, ) -> gboolean4823     pub fn g_uri_is_valid(
4824         uri_string: *const c_char,
4825         flags: GUriFlags,
4826         error: *mut *mut GError,
4827     ) -> gboolean;
4828     #[cfg(any(feature = "v2_66", feature = "dox"))]
4829     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_join( flags: GUriFlags, scheme: *const c_char, userinfo: *const c_char, host: *const c_char, port: c_int, path: *const c_char, query: *const c_char, fragment: *const c_char, ) -> *mut c_char4830     pub fn g_uri_join(
4831         flags: GUriFlags,
4832         scheme: *const c_char,
4833         userinfo: *const c_char,
4834         host: *const c_char,
4835         port: c_int,
4836         path: *const c_char,
4837         query: *const c_char,
4838         fragment: *const c_char,
4839     ) -> *mut c_char;
4840     #[cfg(any(feature = "v2_66", feature = "dox"))]
4841     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_join_with_user( flags: GUriFlags, scheme: *const c_char, user: *const c_char, password: *const c_char, auth_params: *const c_char, host: *const c_char, port: c_int, path: *const c_char, query: *const c_char, fragment: *const c_char, ) -> *mut c_char4842     pub fn g_uri_join_with_user(
4843         flags: GUriFlags,
4844         scheme: *const c_char,
4845         user: *const c_char,
4846         password: *const c_char,
4847         auth_params: *const c_char,
4848         host: *const c_char,
4849         port: c_int,
4850         path: *const c_char,
4851         query: *const c_char,
4852         fragment: *const c_char,
4853     ) -> *mut c_char;
g_uri_list_extract_uris(uri_list: *const c_char) -> *mut *mut c_char4854     pub fn g_uri_list_extract_uris(uri_list: *const c_char) -> *mut *mut c_char;
4855     #[cfg(any(feature = "v2_66", feature = "dox"))]
4856     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_parse( uri_string: *const c_char, flags: GUriFlags, error: *mut *mut GError, ) -> *mut GUri4857     pub fn g_uri_parse(
4858         uri_string: *const c_char,
4859         flags: GUriFlags,
4860         error: *mut *mut GError,
4861     ) -> *mut GUri;
4862     #[cfg(any(feature = "v2_66", feature = "dox"))]
4863     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_parse_params( params: *const c_char, length: ssize_t, separators: *const c_char, flags: GUriParamsFlags, error: *mut *mut GError, ) -> *mut GHashTable4864     pub fn g_uri_parse_params(
4865         params: *const c_char,
4866         length: ssize_t,
4867         separators: *const c_char,
4868         flags: GUriParamsFlags,
4869         error: *mut *mut GError,
4870     ) -> *mut GHashTable;
g_uri_parse_scheme(uri: *const c_char) -> *mut c_char4871     pub fn g_uri_parse_scheme(uri: *const c_char) -> *mut c_char;
4872     #[cfg(any(feature = "v2_66", feature = "dox"))]
4873     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_peek_scheme(uri: *const c_char) -> *const c_char4874     pub fn g_uri_peek_scheme(uri: *const c_char) -> *const c_char;
4875     #[cfg(any(feature = "v2_66", feature = "dox"))]
4876     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_resolve_relative( base_uri_string: *const c_char, uri_ref: *const c_char, flags: GUriFlags, error: *mut *mut GError, ) -> *mut c_char4877     pub fn g_uri_resolve_relative(
4878         base_uri_string: *const c_char,
4879         uri_ref: *const c_char,
4880         flags: GUriFlags,
4881         error: *mut *mut GError,
4882     ) -> *mut c_char;
4883     #[cfg(any(feature = "v2_66", feature = "dox"))]
4884     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_split( uri_ref: *const c_char, flags: GUriFlags, scheme: *mut *mut c_char, userinfo: *mut *mut c_char, host: *mut *mut c_char, port: *mut c_int, path: *mut *mut c_char, query: *mut *mut c_char, fragment: *mut *mut c_char, error: *mut *mut GError, ) -> gboolean4885     pub fn g_uri_split(
4886         uri_ref: *const c_char,
4887         flags: GUriFlags,
4888         scheme: *mut *mut c_char,
4889         userinfo: *mut *mut c_char,
4890         host: *mut *mut c_char,
4891         port: *mut c_int,
4892         path: *mut *mut c_char,
4893         query: *mut *mut c_char,
4894         fragment: *mut *mut c_char,
4895         error: *mut *mut GError,
4896     ) -> gboolean;
4897     #[cfg(any(feature = "v2_66", feature = "dox"))]
4898     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_split_network( uri_string: *const c_char, flags: GUriFlags, scheme: *mut *mut c_char, host: *mut *mut c_char, port: *mut c_int, error: *mut *mut GError, ) -> gboolean4899     pub fn g_uri_split_network(
4900         uri_string: *const c_char,
4901         flags: GUriFlags,
4902         scheme: *mut *mut c_char,
4903         host: *mut *mut c_char,
4904         port: *mut c_int,
4905         error: *mut *mut GError,
4906     ) -> gboolean;
4907     #[cfg(any(feature = "v2_66", feature = "dox"))]
4908     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_split_with_user( uri_ref: *const c_char, flags: GUriFlags, scheme: *mut *mut c_char, user: *mut *mut c_char, password: *mut *mut c_char, auth_params: *mut *mut c_char, host: *mut *mut c_char, port: *mut c_int, path: *mut *mut c_char, query: *mut *mut c_char, fragment: *mut *mut c_char, error: *mut *mut GError, ) -> gboolean4909     pub fn g_uri_split_with_user(
4910         uri_ref: *const c_char,
4911         flags: GUriFlags,
4912         scheme: *mut *mut c_char,
4913         user: *mut *mut c_char,
4914         password: *mut *mut c_char,
4915         auth_params: *mut *mut c_char,
4916         host: *mut *mut c_char,
4917         port: *mut c_int,
4918         path: *mut *mut c_char,
4919         query: *mut *mut c_char,
4920         fragment: *mut *mut c_char,
4921         error: *mut *mut GError,
4922     ) -> gboolean;
4923     #[cfg(any(feature = "v2_66", feature = "dox"))]
4924     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_unescape_bytes( escaped_string: *const c_char, length: ssize_t, illegal_characters: *const c_char, error: *mut *mut GError, ) -> *mut GBytes4925     pub fn g_uri_unescape_bytes(
4926         escaped_string: *const c_char,
4927         length: ssize_t,
4928         illegal_characters: *const c_char,
4929         error: *mut *mut GError,
4930     ) -> *mut GBytes;
g_uri_unescape_segment( escaped_string: *const c_char, escaped_string_end: *const c_char, illegal_characters: *const c_char, ) -> *mut c_char4931     pub fn g_uri_unescape_segment(
4932         escaped_string: *const c_char,
4933         escaped_string_end: *const c_char,
4934         illegal_characters: *const c_char,
4935     ) -> *mut c_char;
g_uri_unescape_string( escaped_string: *const c_char, illegal_characters: *const c_char, ) -> *mut c_char4936     pub fn g_uri_unescape_string(
4937         escaped_string: *const c_char,
4938         illegal_characters: *const c_char,
4939     ) -> *mut c_char;
4940 
4941     //=========================================================================
4942     // GUriParamsIter
4943     //=========================================================================
4944     #[cfg(any(feature = "v2_66", feature = "dox"))]
4945     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_params_iter_init( iter: *mut GUriParamsIter, params: *const c_char, length: ssize_t, separators: *const c_char, flags: GUriParamsFlags, )4946     pub fn g_uri_params_iter_init(
4947         iter: *mut GUriParamsIter,
4948         params: *const c_char,
4949         length: ssize_t,
4950         separators: *const c_char,
4951         flags: GUriParamsFlags,
4952     );
4953     #[cfg(any(feature = "v2_66", feature = "dox"))]
4954     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_uri_params_iter_next( iter: *mut GUriParamsIter, attribute: *mut *mut c_char, value: *mut *mut c_char, error: *mut *mut GError, ) -> gboolean4955     pub fn g_uri_params_iter_next(
4956         iter: *mut GUriParamsIter,
4957         attribute: *mut *mut c_char,
4958         value: *mut *mut c_char,
4959         error: *mut *mut GError,
4960     ) -> gboolean;
4961 
4962     //=========================================================================
4963     // GVariant
4964     //=========================================================================
g_variant_new(format_string: *const c_char, ...) -> *mut GVariant4965     pub fn g_variant_new(format_string: *const c_char, ...) -> *mut GVariant;
g_variant_new_array( child_type: *const GVariantType, children: *const *mut GVariant, n_children: size_t, ) -> *mut GVariant4966     pub fn g_variant_new_array(
4967         child_type: *const GVariantType,
4968         children: *const *mut GVariant,
4969         n_children: size_t,
4970     ) -> *mut GVariant;
g_variant_new_boolean(value: gboolean) -> *mut GVariant4971     pub fn g_variant_new_boolean(value: gboolean) -> *mut GVariant;
g_variant_new_byte(value: u8) -> *mut GVariant4972     pub fn g_variant_new_byte(value: u8) -> *mut GVariant;
g_variant_new_bytestring(string: *const u8) -> *mut GVariant4973     pub fn g_variant_new_bytestring(string: *const u8) -> *mut GVariant;
g_variant_new_bytestring_array( strv: *const *const c_char, length: ssize_t, ) -> *mut GVariant4974     pub fn g_variant_new_bytestring_array(
4975         strv: *const *const c_char,
4976         length: ssize_t,
4977     ) -> *mut GVariant;
g_variant_new_dict_entry(key: *mut GVariant, value: *mut GVariant) -> *mut GVariant4978     pub fn g_variant_new_dict_entry(key: *mut GVariant, value: *mut GVariant) -> *mut GVariant;
g_variant_new_double(value: c_double) -> *mut GVariant4979     pub fn g_variant_new_double(value: c_double) -> *mut GVariant;
g_variant_new_fixed_array( element_type: *const GVariantType, elements: gconstpointer, n_elements: size_t, element_size: size_t, ) -> *mut GVariant4980     pub fn g_variant_new_fixed_array(
4981         element_type: *const GVariantType,
4982         elements: gconstpointer,
4983         n_elements: size_t,
4984         element_size: size_t,
4985     ) -> *mut GVariant;
g_variant_new_from_bytes( type_: *const GVariantType, bytes: *mut GBytes, trusted: gboolean, ) -> *mut GVariant4986     pub fn g_variant_new_from_bytes(
4987         type_: *const GVariantType,
4988         bytes: *mut GBytes,
4989         trusted: gboolean,
4990     ) -> *mut GVariant;
g_variant_new_from_data( type_: *const GVariantType, data: gconstpointer, size: size_t, trusted: gboolean, notify: GDestroyNotify, user_data: gpointer, ) -> *mut GVariant4991     pub fn g_variant_new_from_data(
4992         type_: *const GVariantType,
4993         data: gconstpointer,
4994         size: size_t,
4995         trusted: gboolean,
4996         notify: GDestroyNotify,
4997         user_data: gpointer,
4998     ) -> *mut GVariant;
g_variant_new_handle(value: i32) -> *mut GVariant4999     pub fn g_variant_new_handle(value: i32) -> *mut GVariant;
g_variant_new_int16(value: i16) -> *mut GVariant5000     pub fn g_variant_new_int16(value: i16) -> *mut GVariant;
g_variant_new_int32(value: i32) -> *mut GVariant5001     pub fn g_variant_new_int32(value: i32) -> *mut GVariant;
g_variant_new_int64(value: i64) -> *mut GVariant5002     pub fn g_variant_new_int64(value: i64) -> *mut GVariant;
g_variant_new_maybe( child_type: *const GVariantType, child: *mut GVariant, ) -> *mut GVariant5003     pub fn g_variant_new_maybe(
5004         child_type: *const GVariantType,
5005         child: *mut GVariant,
5006     ) -> *mut GVariant;
g_variant_new_object_path(object_path: *const c_char) -> *mut GVariant5007     pub fn g_variant_new_object_path(object_path: *const c_char) -> *mut GVariant;
g_variant_new_objv(strv: *const *const c_char, length: ssize_t) -> *mut GVariant5008     pub fn g_variant_new_objv(strv: *const *const c_char, length: ssize_t) -> *mut GVariant;
g_variant_new_parsed(format: *const c_char, ...) -> *mut GVariant5009     pub fn g_variant_new_parsed(format: *const c_char, ...) -> *mut GVariant;
5010     //pub fn g_variant_new_parsed_va(format: *const c_char, app: /*Unimplemented*/*mut va_list) -> *mut GVariant;
g_variant_new_printf(format_string: *const c_char, ...) -> *mut GVariant5011     pub fn g_variant_new_printf(format_string: *const c_char, ...) -> *mut GVariant;
g_variant_new_signature(signature: *const c_char) -> *mut GVariant5012     pub fn g_variant_new_signature(signature: *const c_char) -> *mut GVariant;
g_variant_new_string(string: *const c_char) -> *mut GVariant5013     pub fn g_variant_new_string(string: *const c_char) -> *mut GVariant;
g_variant_new_strv(strv: *const *const c_char, length: ssize_t) -> *mut GVariant5014     pub fn g_variant_new_strv(strv: *const *const c_char, length: ssize_t) -> *mut GVariant;
g_variant_new_take_string(string: *mut c_char) -> *mut GVariant5015     pub fn g_variant_new_take_string(string: *mut c_char) -> *mut GVariant;
g_variant_new_tuple(children: *const *mut GVariant, n_children: size_t) -> *mut GVariant5016     pub fn g_variant_new_tuple(children: *const *mut GVariant, n_children: size_t)
5017         -> *mut GVariant;
g_variant_new_uint16(value: u16) -> *mut GVariant5018     pub fn g_variant_new_uint16(value: u16) -> *mut GVariant;
g_variant_new_uint32(value: u32) -> *mut GVariant5019     pub fn g_variant_new_uint32(value: u32) -> *mut GVariant;
g_variant_new_uint64(value: u64) -> *mut GVariant5020     pub fn g_variant_new_uint64(value: u64) -> *mut GVariant;
5021     //pub fn g_variant_new_va(format_string: *const c_char, endptr: *mut *const c_char, app: /*Unimplemented*/*mut va_list) -> *mut GVariant;
g_variant_new_variant(value: *mut GVariant) -> *mut GVariant5022     pub fn g_variant_new_variant(value: *mut GVariant) -> *mut GVariant;
g_variant_byteswap(value: *mut GVariant) -> *mut GVariant5023     pub fn g_variant_byteswap(value: *mut GVariant) -> *mut GVariant;
g_variant_check_format_string( value: *mut GVariant, format_string: *const c_char, copy_only: gboolean, ) -> gboolean5024     pub fn g_variant_check_format_string(
5025         value: *mut GVariant,
5026         format_string: *const c_char,
5027         copy_only: gboolean,
5028     ) -> gboolean;
g_variant_classify(value: *mut GVariant) -> GVariantClass5029     pub fn g_variant_classify(value: *mut GVariant) -> GVariantClass;
g_variant_compare(one: gconstpointer, two: gconstpointer) -> c_int5030     pub fn g_variant_compare(one: gconstpointer, two: gconstpointer) -> c_int;
g_variant_dup_bytestring(value: *mut GVariant, length: *mut size_t) -> *mut u85031     pub fn g_variant_dup_bytestring(value: *mut GVariant, length: *mut size_t) -> *mut u8;
g_variant_dup_bytestring_array( value: *mut GVariant, length: *mut size_t, ) -> *mut *mut c_char5032     pub fn g_variant_dup_bytestring_array(
5033         value: *mut GVariant,
5034         length: *mut size_t,
5035     ) -> *mut *mut c_char;
g_variant_dup_objv(value: *mut GVariant, length: *mut size_t) -> *mut *mut c_char5036     pub fn g_variant_dup_objv(value: *mut GVariant, length: *mut size_t) -> *mut *mut c_char;
g_variant_dup_string(value: *mut GVariant, length: *mut size_t) -> *mut c_char5037     pub fn g_variant_dup_string(value: *mut GVariant, length: *mut size_t) -> *mut c_char;
g_variant_dup_strv(value: *mut GVariant, length: *mut size_t) -> *mut *mut c_char5038     pub fn g_variant_dup_strv(value: *mut GVariant, length: *mut size_t) -> *mut *mut c_char;
g_variant_equal(one: gconstpointer, two: gconstpointer) -> gboolean5039     pub fn g_variant_equal(one: gconstpointer, two: gconstpointer) -> gboolean;
g_variant_get(value: *mut GVariant, format_string: *const c_char, ...)5040     pub fn g_variant_get(value: *mut GVariant, format_string: *const c_char, ...);
g_variant_get_boolean(value: *mut GVariant) -> gboolean5041     pub fn g_variant_get_boolean(value: *mut GVariant) -> gboolean;
g_variant_get_byte(value: *mut GVariant) -> u85042     pub fn g_variant_get_byte(value: *mut GVariant) -> u8;
g_variant_get_bytestring(value: *mut GVariant) -> *const u85043     pub fn g_variant_get_bytestring(value: *mut GVariant) -> *const u8;
g_variant_get_bytestring_array( value: *mut GVariant, length: *mut size_t, ) -> *mut *const c_char5044     pub fn g_variant_get_bytestring_array(
5045         value: *mut GVariant,
5046         length: *mut size_t,
5047     ) -> *mut *const c_char;
g_variant_get_child( value: *mut GVariant, index_: size_t, format_string: *const c_char, ... )5048     pub fn g_variant_get_child(
5049         value: *mut GVariant,
5050         index_: size_t,
5051         format_string: *const c_char,
5052         ...
5053     );
g_variant_get_child_value(value: *mut GVariant, index_: size_t) -> *mut GVariant5054     pub fn g_variant_get_child_value(value: *mut GVariant, index_: size_t) -> *mut GVariant;
g_variant_get_data(value: *mut GVariant) -> gconstpointer5055     pub fn g_variant_get_data(value: *mut GVariant) -> gconstpointer;
g_variant_get_data_as_bytes(value: *mut GVariant) -> *mut GBytes5056     pub fn g_variant_get_data_as_bytes(value: *mut GVariant) -> *mut GBytes;
g_variant_get_double(value: *mut GVariant) -> c_double5057     pub fn g_variant_get_double(value: *mut GVariant) -> c_double;
g_variant_get_fixed_array( value: *mut GVariant, n_elements: *mut size_t, element_size: size_t, ) -> gconstpointer5058     pub fn g_variant_get_fixed_array(
5059         value: *mut GVariant,
5060         n_elements: *mut size_t,
5061         element_size: size_t,
5062     ) -> gconstpointer;
g_variant_get_handle(value: *mut GVariant) -> i325063     pub fn g_variant_get_handle(value: *mut GVariant) -> i32;
g_variant_get_int16(value: *mut GVariant) -> i165064     pub fn g_variant_get_int16(value: *mut GVariant) -> i16;
g_variant_get_int32(value: *mut GVariant) -> i325065     pub fn g_variant_get_int32(value: *mut GVariant) -> i32;
g_variant_get_int64(value: *mut GVariant) -> i645066     pub fn g_variant_get_int64(value: *mut GVariant) -> i64;
g_variant_get_maybe(value: *mut GVariant) -> *mut GVariant5067     pub fn g_variant_get_maybe(value: *mut GVariant) -> *mut GVariant;
g_variant_get_normal_form(value: *mut GVariant) -> *mut GVariant5068     pub fn g_variant_get_normal_form(value: *mut GVariant) -> *mut GVariant;
g_variant_get_objv(value: *mut GVariant, length: *mut size_t) -> *mut *const c_char5069     pub fn g_variant_get_objv(value: *mut GVariant, length: *mut size_t) -> *mut *const c_char;
g_variant_get_size(value: *mut GVariant) -> size_t5070     pub fn g_variant_get_size(value: *mut GVariant) -> size_t;
g_variant_get_string(value: *mut GVariant, length: *mut size_t) -> *const c_char5071     pub fn g_variant_get_string(value: *mut GVariant, length: *mut size_t) -> *const c_char;
g_variant_get_strv(value: *mut GVariant, length: *mut size_t) -> *mut *const c_char5072     pub fn g_variant_get_strv(value: *mut GVariant, length: *mut size_t) -> *mut *const c_char;
g_variant_get_type(value: *mut GVariant) -> *const GVariantType5073     pub fn g_variant_get_type(value: *mut GVariant) -> *const GVariantType;
g_variant_get_type_string(value: *mut GVariant) -> *const c_char5074     pub fn g_variant_get_type_string(value: *mut GVariant) -> *const c_char;
g_variant_get_uint16(value: *mut GVariant) -> u165075     pub fn g_variant_get_uint16(value: *mut GVariant) -> u16;
g_variant_get_uint32(value: *mut GVariant) -> u325076     pub fn g_variant_get_uint32(value: *mut GVariant) -> u32;
g_variant_get_uint64(value: *mut GVariant) -> u645077     pub fn g_variant_get_uint64(value: *mut GVariant) -> u64;
5078     //pub fn g_variant_get_va(value: *mut GVariant, format_string: *const c_char, endptr: *mut *const c_char, app: /*Unimplemented*/*mut va_list);
g_variant_get_variant(value: *mut GVariant) -> *mut GVariant5079     pub fn g_variant_get_variant(value: *mut GVariant) -> *mut GVariant;
g_variant_hash(value: gconstpointer) -> c_uint5080     pub fn g_variant_hash(value: gconstpointer) -> c_uint;
g_variant_is_container(value: *mut GVariant) -> gboolean5081     pub fn g_variant_is_container(value: *mut GVariant) -> gboolean;
g_variant_is_floating(value: *mut GVariant) -> gboolean5082     pub fn g_variant_is_floating(value: *mut GVariant) -> gboolean;
g_variant_is_normal_form(value: *mut GVariant) -> gboolean5083     pub fn g_variant_is_normal_form(value: *mut GVariant) -> gboolean;
g_variant_is_of_type(value: *mut GVariant, type_: *const GVariantType) -> gboolean5084     pub fn g_variant_is_of_type(value: *mut GVariant, type_: *const GVariantType) -> gboolean;
g_variant_iter_new(value: *mut GVariant) -> *mut GVariantIter5085     pub fn g_variant_iter_new(value: *mut GVariant) -> *mut GVariantIter;
g_variant_lookup( dictionary: *mut GVariant, key: *const c_char, format_string: *const c_char, ... ) -> gboolean5086     pub fn g_variant_lookup(
5087         dictionary: *mut GVariant,
5088         key: *const c_char,
5089         format_string: *const c_char,
5090         ...
5091     ) -> gboolean;
g_variant_lookup_value( dictionary: *mut GVariant, key: *const c_char, expected_type: *const GVariantType, ) -> *mut GVariant5092     pub fn g_variant_lookup_value(
5093         dictionary: *mut GVariant,
5094         key: *const c_char,
5095         expected_type: *const GVariantType,
5096     ) -> *mut GVariant;
g_variant_n_children(value: *mut GVariant) -> size_t5097     pub fn g_variant_n_children(value: *mut GVariant) -> size_t;
g_variant_print(value: *mut GVariant, type_annotate: gboolean) -> *mut c_char5098     pub fn g_variant_print(value: *mut GVariant, type_annotate: gboolean) -> *mut c_char;
g_variant_print_string( value: *mut GVariant, string: *mut GString, type_annotate: gboolean, ) -> *mut GString5099     pub fn g_variant_print_string(
5100         value: *mut GVariant,
5101         string: *mut GString,
5102         type_annotate: gboolean,
5103     ) -> *mut GString;
g_variant_ref(value: *mut GVariant) -> *mut GVariant5104     pub fn g_variant_ref(value: *mut GVariant) -> *mut GVariant;
g_variant_ref_sink(value: *mut GVariant) -> *mut GVariant5105     pub fn g_variant_ref_sink(value: *mut GVariant) -> *mut GVariant;
g_variant_store(value: *mut GVariant, data: gpointer)5106     pub fn g_variant_store(value: *mut GVariant, data: gpointer);
g_variant_take_ref(value: *mut GVariant) -> *mut GVariant5107     pub fn g_variant_take_ref(value: *mut GVariant) -> *mut GVariant;
g_variant_unref(value: *mut GVariant)5108     pub fn g_variant_unref(value: *mut GVariant);
g_variant_is_object_path(string: *const c_char) -> gboolean5109     pub fn g_variant_is_object_path(string: *const c_char) -> gboolean;
g_variant_is_signature(string: *const c_char) -> gboolean5110     pub fn g_variant_is_signature(string: *const c_char) -> gboolean;
g_variant_parse( type_: *const GVariantType, text: *const c_char, limit: *const c_char, endptr: *mut *const c_char, error: *mut *mut GError, ) -> *mut GVariant5111     pub fn g_variant_parse(
5112         type_: *const GVariantType,
5113         text: *const c_char,
5114         limit: *const c_char,
5115         endptr: *mut *const c_char,
5116         error: *mut *mut GError,
5117     ) -> *mut GVariant;
g_variant_parse_error_print_context( error: *mut GError, source_str: *const c_char, ) -> *mut c_char5118     pub fn g_variant_parse_error_print_context(
5119         error: *mut GError,
5120         source_str: *const c_char,
5121     ) -> *mut c_char;
g_variant_parse_error_quark() -> GQuark5122     pub fn g_variant_parse_error_quark() -> GQuark;
g_variant_parser_get_error_quark() -> GQuark5123     pub fn g_variant_parser_get_error_quark() -> GQuark;
5124 
5125     //=========================================================================
5126     // GVariantBuilder
5127     //=========================================================================
g_variant_builder_get_type() -> GType5128     pub fn g_variant_builder_get_type() -> GType;
g_variant_builder_new(type_: *const GVariantType) -> *mut GVariantBuilder5129     pub fn g_variant_builder_new(type_: *const GVariantType) -> *mut GVariantBuilder;
g_variant_builder_add(builder: *mut GVariantBuilder, format_string: *const c_char, ...)5130     pub fn g_variant_builder_add(builder: *mut GVariantBuilder, format_string: *const c_char, ...);
g_variant_builder_add_parsed(builder: *mut GVariantBuilder, format: *const c_char, ...)5131     pub fn g_variant_builder_add_parsed(builder: *mut GVariantBuilder, format: *const c_char, ...);
g_variant_builder_add_value(builder: *mut GVariantBuilder, value: *mut GVariant)5132     pub fn g_variant_builder_add_value(builder: *mut GVariantBuilder, value: *mut GVariant);
g_variant_builder_clear(builder: *mut GVariantBuilder)5133     pub fn g_variant_builder_clear(builder: *mut GVariantBuilder);
g_variant_builder_close(builder: *mut GVariantBuilder)5134     pub fn g_variant_builder_close(builder: *mut GVariantBuilder);
g_variant_builder_end(builder: *mut GVariantBuilder) -> *mut GVariant5135     pub fn g_variant_builder_end(builder: *mut GVariantBuilder) -> *mut GVariant;
g_variant_builder_init(builder: *mut GVariantBuilder, type_: *const GVariantType)5136     pub fn g_variant_builder_init(builder: *mut GVariantBuilder, type_: *const GVariantType);
g_variant_builder_open(builder: *mut GVariantBuilder, type_: *const GVariantType)5137     pub fn g_variant_builder_open(builder: *mut GVariantBuilder, type_: *const GVariantType);
g_variant_builder_ref(builder: *mut GVariantBuilder) -> *mut GVariantBuilder5138     pub fn g_variant_builder_ref(builder: *mut GVariantBuilder) -> *mut GVariantBuilder;
g_variant_builder_unref(builder: *mut GVariantBuilder)5139     pub fn g_variant_builder_unref(builder: *mut GVariantBuilder);
5140 
5141     //=========================================================================
5142     // GVariantDict
5143     //=========================================================================
g_variant_dict_get_type() -> GType5144     pub fn g_variant_dict_get_type() -> GType;
g_variant_dict_new(from_asv: *mut GVariant) -> *mut GVariantDict5145     pub fn g_variant_dict_new(from_asv: *mut GVariant) -> *mut GVariantDict;
g_variant_dict_clear(dict: *mut GVariantDict)5146     pub fn g_variant_dict_clear(dict: *mut GVariantDict);
g_variant_dict_contains(dict: *mut GVariantDict, key: *const c_char) -> gboolean5147     pub fn g_variant_dict_contains(dict: *mut GVariantDict, key: *const c_char) -> gboolean;
g_variant_dict_end(dict: *mut GVariantDict) -> *mut GVariant5148     pub fn g_variant_dict_end(dict: *mut GVariantDict) -> *mut GVariant;
g_variant_dict_init(dict: *mut GVariantDict, from_asv: *mut GVariant)5149     pub fn g_variant_dict_init(dict: *mut GVariantDict, from_asv: *mut GVariant);
g_variant_dict_insert( dict: *mut GVariantDict, key: *const c_char, format_string: *const c_char, ... )5150     pub fn g_variant_dict_insert(
5151         dict: *mut GVariantDict,
5152         key: *const c_char,
5153         format_string: *const c_char,
5154         ...
5155     );
g_variant_dict_insert_value( dict: *mut GVariantDict, key: *const c_char, value: *mut GVariant, )5156     pub fn g_variant_dict_insert_value(
5157         dict: *mut GVariantDict,
5158         key: *const c_char,
5159         value: *mut GVariant,
5160     );
g_variant_dict_lookup( dict: *mut GVariantDict, key: *const c_char, format_string: *const c_char, ... ) -> gboolean5161     pub fn g_variant_dict_lookup(
5162         dict: *mut GVariantDict,
5163         key: *const c_char,
5164         format_string: *const c_char,
5165         ...
5166     ) -> gboolean;
g_variant_dict_lookup_value( dict: *mut GVariantDict, key: *const c_char, expected_type: *const GVariantType, ) -> *mut GVariant5167     pub fn g_variant_dict_lookup_value(
5168         dict: *mut GVariantDict,
5169         key: *const c_char,
5170         expected_type: *const GVariantType,
5171     ) -> *mut GVariant;
g_variant_dict_ref(dict: *mut GVariantDict) -> *mut GVariantDict5172     pub fn g_variant_dict_ref(dict: *mut GVariantDict) -> *mut GVariantDict;
g_variant_dict_remove(dict: *mut GVariantDict, key: *const c_char) -> gboolean5173     pub fn g_variant_dict_remove(dict: *mut GVariantDict, key: *const c_char) -> gboolean;
g_variant_dict_unref(dict: *mut GVariantDict)5174     pub fn g_variant_dict_unref(dict: *mut GVariantDict);
5175 
5176     //=========================================================================
5177     // GVariantIter
5178     //=========================================================================
g_variant_iter_copy(iter: *mut GVariantIter) -> *mut GVariantIter5179     pub fn g_variant_iter_copy(iter: *mut GVariantIter) -> *mut GVariantIter;
g_variant_iter_free(iter: *mut GVariantIter)5180     pub fn g_variant_iter_free(iter: *mut GVariantIter);
g_variant_iter_init(iter: *mut GVariantIter, value: *mut GVariant) -> size_t5181     pub fn g_variant_iter_init(iter: *mut GVariantIter, value: *mut GVariant) -> size_t;
g_variant_iter_loop( iter: *mut GVariantIter, format_string: *const c_char, ... ) -> gboolean5182     pub fn g_variant_iter_loop(
5183         iter: *mut GVariantIter,
5184         format_string: *const c_char,
5185         ...
5186     ) -> gboolean;
g_variant_iter_n_children(iter: *mut GVariantIter) -> size_t5187     pub fn g_variant_iter_n_children(iter: *mut GVariantIter) -> size_t;
g_variant_iter_next( iter: *mut GVariantIter, format_string: *const c_char, ... ) -> gboolean5188     pub fn g_variant_iter_next(
5189         iter: *mut GVariantIter,
5190         format_string: *const c_char,
5191         ...
5192     ) -> gboolean;
g_variant_iter_next_value(iter: *mut GVariantIter) -> *mut GVariant5193     pub fn g_variant_iter_next_value(iter: *mut GVariantIter) -> *mut GVariant;
5194 
5195     //=========================================================================
5196     // GVariantType
5197     //=========================================================================
g_variant_type_get_gtype() -> GType5198     pub fn g_variant_type_get_gtype() -> GType;
g_variant_type_new(type_string: *const c_char) -> *mut GVariantType5199     pub fn g_variant_type_new(type_string: *const c_char) -> *mut GVariantType;
g_variant_type_new_array(element: *const GVariantType) -> *mut GVariantType5200     pub fn g_variant_type_new_array(element: *const GVariantType) -> *mut GVariantType;
g_variant_type_new_dict_entry( key: *const GVariantType, value: *const GVariantType, ) -> *mut GVariantType5201     pub fn g_variant_type_new_dict_entry(
5202         key: *const GVariantType,
5203         value: *const GVariantType,
5204     ) -> *mut GVariantType;
g_variant_type_new_maybe(element: *const GVariantType) -> *mut GVariantType5205     pub fn g_variant_type_new_maybe(element: *const GVariantType) -> *mut GVariantType;
g_variant_type_new_tuple( items: *const *const GVariantType, length: c_int, ) -> *mut GVariantType5206     pub fn g_variant_type_new_tuple(
5207         items: *const *const GVariantType,
5208         length: c_int,
5209     ) -> *mut GVariantType;
g_variant_type_copy(type_: *const GVariantType) -> *mut GVariantType5210     pub fn g_variant_type_copy(type_: *const GVariantType) -> *mut GVariantType;
g_variant_type_dup_string(type_: *const GVariantType) -> *mut c_char5211     pub fn g_variant_type_dup_string(type_: *const GVariantType) -> *mut c_char;
g_variant_type_element(type_: *const GVariantType) -> *const GVariantType5212     pub fn g_variant_type_element(type_: *const GVariantType) -> *const GVariantType;
g_variant_type_equal(type1: gconstpointer, type2: gconstpointer) -> gboolean5213     pub fn g_variant_type_equal(type1: gconstpointer, type2: gconstpointer) -> gboolean;
g_variant_type_first(type_: *const GVariantType) -> *const GVariantType5214     pub fn g_variant_type_first(type_: *const GVariantType) -> *const GVariantType;
g_variant_type_free(type_: *mut GVariantType)5215     pub fn g_variant_type_free(type_: *mut GVariantType);
g_variant_type_get_string_length(type_: *const GVariantType) -> size_t5216     pub fn g_variant_type_get_string_length(type_: *const GVariantType) -> size_t;
g_variant_type_hash(type_: gconstpointer) -> c_uint5217     pub fn g_variant_type_hash(type_: gconstpointer) -> c_uint;
g_variant_type_is_array(type_: *const GVariantType) -> gboolean5218     pub fn g_variant_type_is_array(type_: *const GVariantType) -> gboolean;
g_variant_type_is_basic(type_: *const GVariantType) -> gboolean5219     pub fn g_variant_type_is_basic(type_: *const GVariantType) -> gboolean;
g_variant_type_is_container(type_: *const GVariantType) -> gboolean5220     pub fn g_variant_type_is_container(type_: *const GVariantType) -> gboolean;
g_variant_type_is_definite(type_: *const GVariantType) -> gboolean5221     pub fn g_variant_type_is_definite(type_: *const GVariantType) -> gboolean;
g_variant_type_is_dict_entry(type_: *const GVariantType) -> gboolean5222     pub fn g_variant_type_is_dict_entry(type_: *const GVariantType) -> gboolean;
g_variant_type_is_maybe(type_: *const GVariantType) -> gboolean5223     pub fn g_variant_type_is_maybe(type_: *const GVariantType) -> gboolean;
g_variant_type_is_subtype_of( type_: *const GVariantType, supertype: *const GVariantType, ) -> gboolean5224     pub fn g_variant_type_is_subtype_of(
5225         type_: *const GVariantType,
5226         supertype: *const GVariantType,
5227     ) -> gboolean;
g_variant_type_is_tuple(type_: *const GVariantType) -> gboolean5228     pub fn g_variant_type_is_tuple(type_: *const GVariantType) -> gboolean;
g_variant_type_is_variant(type_: *const GVariantType) -> gboolean5229     pub fn g_variant_type_is_variant(type_: *const GVariantType) -> gboolean;
g_variant_type_key(type_: *const GVariantType) -> *const GVariantType5230     pub fn g_variant_type_key(type_: *const GVariantType) -> *const GVariantType;
g_variant_type_n_items(type_: *const GVariantType) -> size_t5231     pub fn g_variant_type_n_items(type_: *const GVariantType) -> size_t;
g_variant_type_next(type_: *const GVariantType) -> *const GVariantType5232     pub fn g_variant_type_next(type_: *const GVariantType) -> *const GVariantType;
g_variant_type_peek_string(type_: *const GVariantType) -> *const c_char5233     pub fn g_variant_type_peek_string(type_: *const GVariantType) -> *const c_char;
g_variant_type_value(type_: *const GVariantType) -> *const GVariantType5234     pub fn g_variant_type_value(type_: *const GVariantType) -> *const GVariantType;
g_variant_type_checked_(arg0: *const c_char) -> *const GVariantType5235     pub fn g_variant_type_checked_(arg0: *const c_char) -> *const GVariantType;
g_variant_type_string_get_depth_(type_string: *const c_char) -> size_t5236     pub fn g_variant_type_string_get_depth_(type_string: *const c_char) -> size_t;
g_variant_type_string_is_valid(type_string: *const c_char) -> gboolean5237     pub fn g_variant_type_string_is_valid(type_string: *const c_char) -> gboolean;
g_variant_type_string_scan( string: *const c_char, limit: *const c_char, endptr: *mut *const c_char, ) -> gboolean5238     pub fn g_variant_type_string_scan(
5239         string: *const c_char,
5240         limit: *const c_char,
5241         endptr: *mut *const c_char,
5242     ) -> gboolean;
5243 
5244     //=========================================================================
5245     // Other functions
5246     //=========================================================================
g_access(filename: *const c_char, mode: c_int) -> c_int5247     pub fn g_access(filename: *const c_char, mode: c_int) -> c_int;
g_ascii_digit_value(c: c_char) -> c_int5248     pub fn g_ascii_digit_value(c: c_char) -> c_int;
g_ascii_dtostr(buffer: *mut c_char, buf_len: c_int, d: c_double) -> *mut c_char5249     pub fn g_ascii_dtostr(buffer: *mut c_char, buf_len: c_int, d: c_double) -> *mut c_char;
g_ascii_formatd( buffer: *mut c_char, buf_len: c_int, format: *const c_char, d: c_double, ) -> *mut c_char5250     pub fn g_ascii_formatd(
5251         buffer: *mut c_char,
5252         buf_len: c_int,
5253         format: *const c_char,
5254         d: c_double,
5255     ) -> *mut c_char;
g_ascii_strcasecmp(s1: *const c_char, s2: *const c_char) -> c_int5256     pub fn g_ascii_strcasecmp(s1: *const c_char, s2: *const c_char) -> c_int;
g_ascii_strdown(str: *const c_char, len: ssize_t) -> *mut c_char5257     pub fn g_ascii_strdown(str: *const c_char, len: ssize_t) -> *mut c_char;
5258     #[cfg(any(feature = "v2_54", feature = "dox"))]
5259     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_54")))]
g_ascii_string_to_signed( str: *const c_char, base: c_uint, min: i64, max: i64, out_num: *mut i64, error: *mut *mut GError, ) -> gboolean5260     pub fn g_ascii_string_to_signed(
5261         str: *const c_char,
5262         base: c_uint,
5263         min: i64,
5264         max: i64,
5265         out_num: *mut i64,
5266         error: *mut *mut GError,
5267     ) -> gboolean;
5268     #[cfg(any(feature = "v2_54", feature = "dox"))]
5269     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_54")))]
g_ascii_string_to_unsigned( str: *const c_char, base: c_uint, min: u64, max: u64, out_num: *mut u64, error: *mut *mut GError, ) -> gboolean5270     pub fn g_ascii_string_to_unsigned(
5271         str: *const c_char,
5272         base: c_uint,
5273         min: u64,
5274         max: u64,
5275         out_num: *mut u64,
5276         error: *mut *mut GError,
5277     ) -> gboolean;
g_ascii_strncasecmp(s1: *const c_char, s2: *const c_char, n: size_t) -> c_int5278     pub fn g_ascii_strncasecmp(s1: *const c_char, s2: *const c_char, n: size_t) -> c_int;
g_ascii_strtod(nptr: *const c_char, endptr: *mut *mut c_char) -> c_double5279     pub fn g_ascii_strtod(nptr: *const c_char, endptr: *mut *mut c_char) -> c_double;
g_ascii_strtoll(nptr: *const c_char, endptr: *mut *mut c_char, base: c_uint) -> i645280     pub fn g_ascii_strtoll(nptr: *const c_char, endptr: *mut *mut c_char, base: c_uint) -> i64;
g_ascii_strtoull(nptr: *const c_char, endptr: *mut *mut c_char, base: c_uint) -> u645281     pub fn g_ascii_strtoull(nptr: *const c_char, endptr: *mut *mut c_char, base: c_uint) -> u64;
g_ascii_strup(str: *const c_char, len: ssize_t) -> *mut c_char5282     pub fn g_ascii_strup(str: *const c_char, len: ssize_t) -> *mut c_char;
g_ascii_tolower(c: c_char) -> c_char5283     pub fn g_ascii_tolower(c: c_char) -> c_char;
g_ascii_toupper(c: c_char) -> c_char5284     pub fn g_ascii_toupper(c: c_char) -> c_char;
g_ascii_xdigit_value(c: c_char) -> c_int5285     pub fn g_ascii_xdigit_value(c: c_char) -> c_int;
g_assert_warning( log_domain: *const c_char, file: *const c_char, line: c_int, pretty_function: *const c_char, expression: *const c_char, )5286     pub fn g_assert_warning(
5287         log_domain: *const c_char,
5288         file: *const c_char,
5289         line: c_int,
5290         pretty_function: *const c_char,
5291         expression: *const c_char,
5292     );
g_assertion_message( domain: *const c_char, file: *const c_char, line: c_int, func: *const c_char, message: *const c_char, )5293     pub fn g_assertion_message(
5294         domain: *const c_char,
5295         file: *const c_char,
5296         line: c_int,
5297         func: *const c_char,
5298         message: *const c_char,
5299     );
5300     //pub fn g_assertion_message_cmpnum(domain: *const c_char, file: *const c_char, line: c_int, func: *const c_char, expr: *const c_char, arg1: /*Unimplemented*/long double, cmp: *const c_char, arg2: /*Unimplemented*/long double, numtype: c_char);
g_assertion_message_cmpstr( domain: *const c_char, file: *const c_char, line: c_int, func: *const c_char, expr: *const c_char, arg1: *const c_char, cmp: *const c_char, arg2: *const c_char, )5301     pub fn g_assertion_message_cmpstr(
5302         domain: *const c_char,
5303         file: *const c_char,
5304         line: c_int,
5305         func: *const c_char,
5306         expr: *const c_char,
5307         arg1: *const c_char,
5308         cmp: *const c_char,
5309         arg2: *const c_char,
5310     );
g_assertion_message_error( domain: *const c_char, file: *const c_char, line: c_int, func: *const c_char, expr: *const c_char, error: *const GError, error_domain: GQuark, error_code: c_int, )5311     pub fn g_assertion_message_error(
5312         domain: *const c_char,
5313         file: *const c_char,
5314         line: c_int,
5315         func: *const c_char,
5316         expr: *const c_char,
5317         error: *const GError,
5318         error_domain: GQuark,
5319         error_code: c_int,
5320     );
g_assertion_message_expr( domain: *const c_char, file: *const c_char, line: c_int, func: *const c_char, expr: *const c_char, )5321     pub fn g_assertion_message_expr(
5322         domain: *const c_char,
5323         file: *const c_char,
5324         line: c_int,
5325         func: *const c_char,
5326         expr: *const c_char,
5327     );
g_atexit(func: GVoidFunc)5328     pub fn g_atexit(func: GVoidFunc);
g_atomic_int_add(atomic: *mut c_int, val: c_int) -> c_int5329     pub fn g_atomic_int_add(atomic: *mut c_int, val: c_int) -> c_int;
g_atomic_int_and(atomic: *mut c_uint, val: c_uint) -> c_uint5330     pub fn g_atomic_int_and(atomic: *mut c_uint, val: c_uint) -> c_uint;
g_atomic_int_compare_and_exchange( atomic: *mut c_int, oldval: c_int, newval: c_int, ) -> gboolean5331     pub fn g_atomic_int_compare_and_exchange(
5332         atomic: *mut c_int,
5333         oldval: c_int,
5334         newval: c_int,
5335     ) -> gboolean;
g_atomic_int_dec_and_test(atomic: *mut c_int) -> gboolean5336     pub fn g_atomic_int_dec_and_test(atomic: *mut c_int) -> gboolean;
g_atomic_int_exchange_and_add(atomic: *mut c_int, val: c_int) -> c_int5337     pub fn g_atomic_int_exchange_and_add(atomic: *mut c_int, val: c_int) -> c_int;
g_atomic_int_get(atomic: *const c_int) -> c_int5338     pub fn g_atomic_int_get(atomic: *const c_int) -> c_int;
g_atomic_int_inc(atomic: *mut c_int)5339     pub fn g_atomic_int_inc(atomic: *mut c_int);
g_atomic_int_or(atomic: *mut c_uint, val: c_uint) -> c_uint5340     pub fn g_atomic_int_or(atomic: *mut c_uint, val: c_uint) -> c_uint;
g_atomic_int_set(atomic: *mut c_int, newval: c_int)5341     pub fn g_atomic_int_set(atomic: *mut c_int, newval: c_int);
g_atomic_int_xor(atomic: *mut c_uint, val: c_uint) -> c_uint5342     pub fn g_atomic_int_xor(atomic: *mut c_uint, val: c_uint) -> c_uint;
g_atomic_pointer_add(atomic: *mut c_void, val: ssize_t) -> ssize_t5343     pub fn g_atomic_pointer_add(atomic: *mut c_void, val: ssize_t) -> ssize_t;
g_atomic_pointer_and(atomic: *mut c_void, val: size_t) -> size_t5344     pub fn g_atomic_pointer_and(atomic: *mut c_void, val: size_t) -> size_t;
g_atomic_pointer_compare_and_exchange( atomic: *mut c_void, oldval: gpointer, newval: gpointer, ) -> gboolean5345     pub fn g_atomic_pointer_compare_and_exchange(
5346         atomic: *mut c_void,
5347         oldval: gpointer,
5348         newval: gpointer,
5349     ) -> gboolean;
g_atomic_pointer_get(atomic: *mut c_void) -> gpointer5350     pub fn g_atomic_pointer_get(atomic: *mut c_void) -> gpointer;
g_atomic_pointer_or(atomic: *mut c_void, val: size_t) -> size_t5351     pub fn g_atomic_pointer_or(atomic: *mut c_void, val: size_t) -> size_t;
g_atomic_pointer_set(atomic: *mut c_void, newval: gpointer)5352     pub fn g_atomic_pointer_set(atomic: *mut c_void, newval: gpointer);
g_atomic_pointer_xor(atomic: *mut c_void, val: size_t) -> size_t5353     pub fn g_atomic_pointer_xor(atomic: *mut c_void, val: size_t) -> size_t;
5354     #[cfg(any(feature = "v2_58", feature = "dox"))]
5355     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_rc_box_acquire(mem_block: gpointer) -> gpointer5356     pub fn g_atomic_rc_box_acquire(mem_block: gpointer) -> gpointer;
5357     #[cfg(any(feature = "v2_58", feature = "dox"))]
5358     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_rc_box_alloc(block_size: size_t) -> gpointer5359     pub fn g_atomic_rc_box_alloc(block_size: size_t) -> gpointer;
5360     #[cfg(any(feature = "v2_58", feature = "dox"))]
5361     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_rc_box_alloc0(block_size: size_t) -> gpointer5362     pub fn g_atomic_rc_box_alloc0(block_size: size_t) -> gpointer;
5363     #[cfg(any(feature = "v2_58", feature = "dox"))]
5364     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_rc_box_dup(block_size: size_t, mem_block: gconstpointer) -> gpointer5365     pub fn g_atomic_rc_box_dup(block_size: size_t, mem_block: gconstpointer) -> gpointer;
5366     #[cfg(any(feature = "v2_58", feature = "dox"))]
5367     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_rc_box_get_size(mem_block: gpointer) -> size_t5368     pub fn g_atomic_rc_box_get_size(mem_block: gpointer) -> size_t;
5369     #[cfg(any(feature = "v2_58", feature = "dox"))]
5370     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_rc_box_release(mem_block: gpointer)5371     pub fn g_atomic_rc_box_release(mem_block: gpointer);
5372     #[cfg(any(feature = "v2_58", feature = "dox"))]
5373     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_rc_box_release_full(mem_block: gpointer, clear_func: GDestroyNotify)5374     pub fn g_atomic_rc_box_release_full(mem_block: gpointer, clear_func: GDestroyNotify);
5375     #[cfg(any(feature = "v2_58", feature = "dox"))]
5376     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_ref_count_compare(arc: *mut c_int, val: c_int) -> gboolean5377     pub fn g_atomic_ref_count_compare(arc: *mut c_int, val: c_int) -> gboolean;
5378     #[cfg(any(feature = "v2_58", feature = "dox"))]
5379     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_ref_count_dec(arc: *mut c_int) -> gboolean5380     pub fn g_atomic_ref_count_dec(arc: *mut c_int) -> gboolean;
5381     #[cfg(any(feature = "v2_58", feature = "dox"))]
5382     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_ref_count_inc(arc: *mut c_int)5383     pub fn g_atomic_ref_count_inc(arc: *mut c_int);
5384     #[cfg(any(feature = "v2_58", feature = "dox"))]
5385     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_atomic_ref_count_init(arc: *mut c_int)5386     pub fn g_atomic_ref_count_init(arc: *mut c_int);
g_base64_decode(text: *const c_char, out_len: *mut size_t) -> *mut u85387     pub fn g_base64_decode(text: *const c_char, out_len: *mut size_t) -> *mut u8;
g_base64_decode_inplace(text: *mut u8, out_len: *mut size_t) -> *mut u85388     pub fn g_base64_decode_inplace(text: *mut u8, out_len: *mut size_t) -> *mut u8;
g_base64_decode_step( in_: *const u8, len: size_t, out: *mut u8, state: *mut c_int, save: *mut c_uint, ) -> size_t5389     pub fn g_base64_decode_step(
5390         in_: *const u8,
5391         len: size_t,
5392         out: *mut u8,
5393         state: *mut c_int,
5394         save: *mut c_uint,
5395     ) -> size_t;
g_base64_encode(data: *const u8, len: size_t) -> *mut c_char5396     pub fn g_base64_encode(data: *const u8, len: size_t) -> *mut c_char;
g_base64_encode_close( break_lines: gboolean, out: *mut u8, state: *mut c_int, save: *mut c_int, ) -> size_t5397     pub fn g_base64_encode_close(
5398         break_lines: gboolean,
5399         out: *mut u8,
5400         state: *mut c_int,
5401         save: *mut c_int,
5402     ) -> size_t;
g_base64_encode_step( in_: *const u8, len: size_t, break_lines: gboolean, out: *mut u8, state: *mut c_int, save: *mut c_int, ) -> size_t5403     pub fn g_base64_encode_step(
5404         in_: *const u8,
5405         len: size_t,
5406         break_lines: gboolean,
5407         out: *mut u8,
5408         state: *mut c_int,
5409         save: *mut c_int,
5410     ) -> size_t;
g_basename(file_name: *const c_char) -> *const c_char5411     pub fn g_basename(file_name: *const c_char) -> *const c_char;
g_bit_lock(address: *mut c_int, lock_bit: c_int)5412     pub fn g_bit_lock(address: *mut c_int, lock_bit: c_int);
g_bit_nth_lsf(mask: c_ulong, nth_bit: c_int) -> c_int5413     pub fn g_bit_nth_lsf(mask: c_ulong, nth_bit: c_int) -> c_int;
g_bit_nth_msf(mask: c_ulong, nth_bit: c_int) -> c_int5414     pub fn g_bit_nth_msf(mask: c_ulong, nth_bit: c_int) -> c_int;
g_bit_storage(number: c_ulong) -> c_uint5415     pub fn g_bit_storage(number: c_ulong) -> c_uint;
g_bit_trylock(address: *mut c_int, lock_bit: c_int) -> gboolean5416     pub fn g_bit_trylock(address: *mut c_int, lock_bit: c_int) -> gboolean;
g_bit_unlock(address: *mut c_int, lock_bit: c_int)5417     pub fn g_bit_unlock(address: *mut c_int, lock_bit: c_int);
g_build_filename(first_element: *const c_char, ...) -> *mut c_char5418     pub fn g_build_filename(first_element: *const c_char, ...) -> *mut c_char;
5419     //#[cfg(any(feature = "v2_56", feature = "dox"))]
5420     //#[cfg_attr(feature = "dox", doc(cfg(feature = "v2_56")))]
5421     //pub fn g_build_filename_valist(first_element: *const c_char, args: /*Unimplemented*/*mut va_list) -> *mut c_char;
g_build_filenamev(args: *mut *mut c_char) -> *mut c_char5422     pub fn g_build_filenamev(args: *mut *mut c_char) -> *mut c_char;
g_build_path(separator: *const c_char, first_element: *const c_char, ...) -> *mut c_char5423     pub fn g_build_path(separator: *const c_char, first_element: *const c_char, ...)
5424         -> *mut c_char;
g_build_pathv(separator: *const c_char, args: *mut *mut c_char) -> *mut c_char5425     pub fn g_build_pathv(separator: *const c_char, args: *mut *mut c_char) -> *mut c_char;
5426     #[cfg(any(feature = "v2_58", feature = "dox"))]
5427     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_canonicalize_filename( filename: *const c_char, relative_to: *const c_char, ) -> *mut c_char5428     pub fn g_canonicalize_filename(
5429         filename: *const c_char,
5430         relative_to: *const c_char,
5431     ) -> *mut c_char;
g_chdir(path: *const c_char) -> c_int5432     pub fn g_chdir(path: *const c_char) -> c_int;
glib_check_version( required_major: c_uint, required_minor: c_uint, required_micro: c_uint, ) -> *const c_char5433     pub fn glib_check_version(
5434         required_major: c_uint,
5435         required_minor: c_uint,
5436         required_micro: c_uint,
5437     ) -> *const c_char;
g_child_watch_add(pid: GPid, function: GChildWatchFunc, data: gpointer) -> c_uint5438     pub fn g_child_watch_add(pid: GPid, function: GChildWatchFunc, data: gpointer) -> c_uint;
g_child_watch_add_full( priority: c_int, pid: GPid, function: GChildWatchFunc, data: gpointer, notify: GDestroyNotify, ) -> c_uint5439     pub fn g_child_watch_add_full(
5440         priority: c_int,
5441         pid: GPid,
5442         function: GChildWatchFunc,
5443         data: gpointer,
5444         notify: GDestroyNotify,
5445     ) -> c_uint;
g_child_watch_source_new(pid: GPid) -> *mut GSource5446     pub fn g_child_watch_source_new(pid: GPid) -> *mut GSource;
g_clear_error(error: *mut *mut GError)5447     pub fn g_clear_error(error: *mut *mut GError);
5448     #[cfg(any(feature = "v2_56", feature = "dox"))]
5449     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_56")))]
g_clear_handle_id(tag_ptr: *mut c_uint, clear_func: GClearHandleFunc)5450     pub fn g_clear_handle_id(tag_ptr: *mut c_uint, clear_func: GClearHandleFunc);
5451     #[cfg(any(feature = "v2_64", feature = "dox"))]
5452     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_64")))]
g_clear_list(list_ptr: *mut *mut GList, destroy: GDestroyNotify)5453     pub fn g_clear_list(list_ptr: *mut *mut GList, destroy: GDestroyNotify);
g_clear_pointer(pp: *mut gpointer, destroy: GDestroyNotify)5454     pub fn g_clear_pointer(pp: *mut gpointer, destroy: GDestroyNotify);
5455     #[cfg(any(feature = "v2_64", feature = "dox"))]
5456     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_64")))]
g_clear_slist(slist_ptr: *mut *mut GSList, destroy: GDestroyNotify)5457     pub fn g_clear_slist(slist_ptr: *mut *mut GSList, destroy: GDestroyNotify);
g_close(fd: c_int, error: *mut *mut GError) -> gboolean5458     pub fn g_close(fd: c_int, error: *mut *mut GError) -> gboolean;
g_compute_checksum_for_bytes( checksum_type: GChecksumType, data: *mut GBytes, ) -> *mut c_char5459     pub fn g_compute_checksum_for_bytes(
5460         checksum_type: GChecksumType,
5461         data: *mut GBytes,
5462     ) -> *mut c_char;
g_compute_checksum_for_data( checksum_type: GChecksumType, data: *const u8, length: size_t, ) -> *mut c_char5463     pub fn g_compute_checksum_for_data(
5464         checksum_type: GChecksumType,
5465         data: *const u8,
5466         length: size_t,
5467     ) -> *mut c_char;
g_compute_checksum_for_string( checksum_type: GChecksumType, str: *const c_char, length: ssize_t, ) -> *mut c_char5468     pub fn g_compute_checksum_for_string(
5469         checksum_type: GChecksumType,
5470         str: *const c_char,
5471         length: ssize_t,
5472     ) -> *mut c_char;
5473     #[cfg(any(feature = "v2_50", feature = "dox"))]
5474     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_compute_hmac_for_bytes( digest_type: GChecksumType, key: *mut GBytes, data: *mut GBytes, ) -> *mut c_char5475     pub fn g_compute_hmac_for_bytes(
5476         digest_type: GChecksumType,
5477         key: *mut GBytes,
5478         data: *mut GBytes,
5479     ) -> *mut c_char;
g_compute_hmac_for_data( digest_type: GChecksumType, key: *const u8, key_len: size_t, data: *const u8, length: size_t, ) -> *mut c_char5480     pub fn g_compute_hmac_for_data(
5481         digest_type: GChecksumType,
5482         key: *const u8,
5483         key_len: size_t,
5484         data: *const u8,
5485         length: size_t,
5486     ) -> *mut c_char;
g_compute_hmac_for_string( digest_type: GChecksumType, key: *const u8, key_len: size_t, str: *const c_char, length: ssize_t, ) -> *mut c_char5487     pub fn g_compute_hmac_for_string(
5488         digest_type: GChecksumType,
5489         key: *const u8,
5490         key_len: size_t,
5491         str: *const c_char,
5492         length: ssize_t,
5493     ) -> *mut c_char;
g_convert( str: *const u8, len: ssize_t, to_codeset: *const c_char, from_codeset: *const c_char, bytes_read: *mut size_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> *mut u85494     pub fn g_convert(
5495         str: *const u8,
5496         len: ssize_t,
5497         to_codeset: *const c_char,
5498         from_codeset: *const c_char,
5499         bytes_read: *mut size_t,
5500         bytes_written: *mut size_t,
5501         error: *mut *mut GError,
5502     ) -> *mut u8;
g_convert_error_quark() -> GQuark5503     pub fn g_convert_error_quark() -> GQuark;
g_convert_with_fallback( str: *const u8, len: ssize_t, to_codeset: *const c_char, from_codeset: *const c_char, fallback: *const c_char, bytes_read: *mut size_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> *mut u85504     pub fn g_convert_with_fallback(
5505         str: *const u8,
5506         len: ssize_t,
5507         to_codeset: *const c_char,
5508         from_codeset: *const c_char,
5509         fallback: *const c_char,
5510         bytes_read: *mut size_t,
5511         bytes_written: *mut size_t,
5512         error: *mut *mut GError,
5513     ) -> *mut u8;
g_convert_with_iconv( str: *const u8, len: ssize_t, converter: GIConv, bytes_read: *mut size_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> *mut u85514     pub fn g_convert_with_iconv(
5515         str: *const u8,
5516         len: ssize_t,
5517         converter: GIConv,
5518         bytes_read: *mut size_t,
5519         bytes_written: *mut size_t,
5520         error: *mut *mut GError,
5521     ) -> *mut u8;
g_datalist_clear(datalist: *mut *mut GData)5522     pub fn g_datalist_clear(datalist: *mut *mut GData);
g_datalist_foreach( datalist: *mut *mut GData, func: GDataForeachFunc, user_data: gpointer, )5523     pub fn g_datalist_foreach(
5524         datalist: *mut *mut GData,
5525         func: GDataForeachFunc,
5526         user_data: gpointer,
5527     );
g_datalist_get_data(datalist: *mut *mut GData, key: *const c_char) -> gpointer5528     pub fn g_datalist_get_data(datalist: *mut *mut GData, key: *const c_char) -> gpointer;
g_datalist_get_flags(datalist: *mut *mut GData) -> c_uint5529     pub fn g_datalist_get_flags(datalist: *mut *mut GData) -> c_uint;
g_datalist_id_dup_data( datalist: *mut *mut GData, key_id: GQuark, dup_func: GDuplicateFunc, user_data: gpointer, ) -> gpointer5530     pub fn g_datalist_id_dup_data(
5531         datalist: *mut *mut GData,
5532         key_id: GQuark,
5533         dup_func: GDuplicateFunc,
5534         user_data: gpointer,
5535     ) -> gpointer;
g_datalist_id_get_data(datalist: *mut *mut GData, key_id: GQuark) -> gpointer5536     pub fn g_datalist_id_get_data(datalist: *mut *mut GData, key_id: GQuark) -> gpointer;
g_datalist_id_remove_no_notify(datalist: *mut *mut GData, key_id: GQuark) -> gpointer5537     pub fn g_datalist_id_remove_no_notify(datalist: *mut *mut GData, key_id: GQuark) -> gpointer;
g_datalist_id_replace_data( datalist: *mut *mut GData, key_id: GQuark, oldval: gpointer, newval: gpointer, destroy: GDestroyNotify, old_destroy: *mut GDestroyNotify, ) -> gboolean5538     pub fn g_datalist_id_replace_data(
5539         datalist: *mut *mut GData,
5540         key_id: GQuark,
5541         oldval: gpointer,
5542         newval: gpointer,
5543         destroy: GDestroyNotify,
5544         old_destroy: *mut GDestroyNotify,
5545     ) -> gboolean;
g_datalist_id_set_data_full( datalist: *mut *mut GData, key_id: GQuark, data: gpointer, destroy_func: GDestroyNotify, )5546     pub fn g_datalist_id_set_data_full(
5547         datalist: *mut *mut GData,
5548         key_id: GQuark,
5549         data: gpointer,
5550         destroy_func: GDestroyNotify,
5551     );
g_datalist_init(datalist: *mut *mut GData)5552     pub fn g_datalist_init(datalist: *mut *mut GData);
g_datalist_set_flags(datalist: *mut *mut GData, flags: c_uint)5553     pub fn g_datalist_set_flags(datalist: *mut *mut GData, flags: c_uint);
g_datalist_unset_flags(datalist: *mut *mut GData, flags: c_uint)5554     pub fn g_datalist_unset_flags(datalist: *mut *mut GData, flags: c_uint);
g_dataset_destroy(dataset_location: gconstpointer)5555     pub fn g_dataset_destroy(dataset_location: gconstpointer);
g_dataset_foreach( dataset_location: gconstpointer, func: GDataForeachFunc, user_data: gpointer, )5556     pub fn g_dataset_foreach(
5557         dataset_location: gconstpointer,
5558         func: GDataForeachFunc,
5559         user_data: gpointer,
5560     );
g_dataset_id_get_data(dataset_location: gconstpointer, key_id: GQuark) -> gpointer5561     pub fn g_dataset_id_get_data(dataset_location: gconstpointer, key_id: GQuark) -> gpointer;
g_dataset_id_remove_no_notify( dataset_location: gconstpointer, key_id: GQuark, ) -> gpointer5562     pub fn g_dataset_id_remove_no_notify(
5563         dataset_location: gconstpointer,
5564         key_id: GQuark,
5565     ) -> gpointer;
g_dataset_id_set_data_full( dataset_location: gconstpointer, key_id: GQuark, data: gpointer, destroy_func: GDestroyNotify, )5566     pub fn g_dataset_id_set_data_full(
5567         dataset_location: gconstpointer,
5568         key_id: GQuark,
5569         data: gpointer,
5570         destroy_func: GDestroyNotify,
5571     );
g_dcgettext( domain: *const c_char, msgid: *const c_char, category: c_int, ) -> *const c_char5572     pub fn g_dcgettext(
5573         domain: *const c_char,
5574         msgid: *const c_char,
5575         category: c_int,
5576     ) -> *const c_char;
g_dgettext(domain: *const c_char, msgid: *const c_char) -> *const c_char5577     pub fn g_dgettext(domain: *const c_char, msgid: *const c_char) -> *const c_char;
g_direct_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean5578     pub fn g_direct_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean;
g_direct_hash(v: gconstpointer) -> c_uint5579     pub fn g_direct_hash(v: gconstpointer) -> c_uint;
g_dngettext( domain: *const c_char, msgid: *const c_char, msgid_plural: *const c_char, n: c_ulong, ) -> *const c_char5580     pub fn g_dngettext(
5581         domain: *const c_char,
5582         msgid: *const c_char,
5583         msgid_plural: *const c_char,
5584         n: c_ulong,
5585     ) -> *const c_char;
g_double_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean5586     pub fn g_double_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean;
g_double_hash(v: gconstpointer) -> c_uint5587     pub fn g_double_hash(v: gconstpointer) -> c_uint;
g_dpgettext( domain: *const c_char, msgctxtid: *const c_char, msgidoffset: size_t, ) -> *const c_char5588     pub fn g_dpgettext(
5589         domain: *const c_char,
5590         msgctxtid: *const c_char,
5591         msgidoffset: size_t,
5592     ) -> *const c_char;
g_dpgettext2( domain: *const c_char, context: *const c_char, msgid: *const c_char, ) -> *const c_char5593     pub fn g_dpgettext2(
5594         domain: *const c_char,
5595         context: *const c_char,
5596         msgid: *const c_char,
5597     ) -> *const c_char;
g_environ_getenv(envp: *mut *mut c_char, variable: *const c_char) -> *const c_char5598     pub fn g_environ_getenv(envp: *mut *mut c_char, variable: *const c_char) -> *const c_char;
g_environ_setenv( envp: *mut *mut c_char, variable: *const c_char, value: *const c_char, overwrite: gboolean, ) -> *mut *mut c_char5599     pub fn g_environ_setenv(
5600         envp: *mut *mut c_char,
5601         variable: *const c_char,
5602         value: *const c_char,
5603         overwrite: gboolean,
5604     ) -> *mut *mut c_char;
g_environ_unsetenv(envp: *mut *mut c_char, variable: *const c_char) -> *mut *mut c_char5605     pub fn g_environ_unsetenv(envp: *mut *mut c_char, variable: *const c_char) -> *mut *mut c_char;
g_file_error_from_errno(err_no: c_int) -> GFileError5606     pub fn g_file_error_from_errno(err_no: c_int) -> GFileError;
g_file_error_quark() -> GQuark5607     pub fn g_file_error_quark() -> GQuark;
5608     #[cfg(any(windows, feature = "dox"))]
5609     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_file_get_contents_utf8( filename: *const c_char, contents: *mut *mut u8, length: *mut size_t, error: *mut *mut GError, ) -> gboolean5610     pub fn g_file_get_contents_utf8(
5611         filename: *const c_char,
5612         contents: *mut *mut u8,
5613         length: *mut size_t,
5614         error: *mut *mut GError,
5615     ) -> gboolean;
g_file_get_contents( filename: *const c_char, contents: *mut *mut u8, length: *mut size_t, error: *mut *mut GError, ) -> gboolean5616     pub fn g_file_get_contents(
5617         filename: *const c_char,
5618         contents: *mut *mut u8,
5619         length: *mut size_t,
5620         error: *mut *mut GError,
5621     ) -> gboolean;
5622     #[cfg(any(windows, feature = "dox"))]
5623     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_file_open_tmp_utf8( tmpl: *const c_char, name_used: *mut *mut c_char, error: *mut *mut GError, ) -> c_int5624     pub fn g_file_open_tmp_utf8(
5625         tmpl: *const c_char,
5626         name_used: *mut *mut c_char,
5627         error: *mut *mut GError,
5628     ) -> c_int;
g_file_open_tmp( tmpl: *const c_char, name_used: *mut *mut c_char, error: *mut *mut GError, ) -> c_int5629     pub fn g_file_open_tmp(
5630         tmpl: *const c_char,
5631         name_used: *mut *mut c_char,
5632         error: *mut *mut GError,
5633     ) -> c_int;
g_file_read_link(filename: *const c_char, error: *mut *mut GError) -> *mut c_char5634     pub fn g_file_read_link(filename: *const c_char, error: *mut *mut GError) -> *mut c_char;
g_file_set_contents( filename: *const c_char, contents: *const u8, length: ssize_t, error: *mut *mut GError, ) -> gboolean5635     pub fn g_file_set_contents(
5636         filename: *const c_char,
5637         contents: *const u8,
5638         length: ssize_t,
5639         error: *mut *mut GError,
5640     ) -> gboolean;
5641     #[cfg(any(feature = "v2_66", feature = "dox"))]
5642     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_66")))]
g_file_set_contents_full( filename: *const c_char, contents: *const u8, length: ssize_t, flags: GFileSetContentsFlags, mode: c_int, error: *mut *mut GError, ) -> gboolean5643     pub fn g_file_set_contents_full(
5644         filename: *const c_char,
5645         contents: *const u8,
5646         length: ssize_t,
5647         flags: GFileSetContentsFlags,
5648         mode: c_int,
5649         error: *mut *mut GError,
5650     ) -> gboolean;
5651     #[cfg(any(windows, feature = "dox"))]
5652     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_file_test_utf8(filename: *const c_char, test: GFileTest) -> gboolean5653     pub fn g_file_test_utf8(filename: *const c_char, test: GFileTest) -> gboolean;
g_file_test(filename: *const c_char, test: GFileTest) -> gboolean5654     pub fn g_file_test(filename: *const c_char, test: GFileTest) -> gboolean;
g_filename_display_basename(filename: *const c_char) -> *mut c_char5655     pub fn g_filename_display_basename(filename: *const c_char) -> *mut c_char;
g_filename_display_name(filename: *const c_char) -> *mut c_char5656     pub fn g_filename_display_name(filename: *const c_char) -> *mut c_char;
5657     #[cfg(any(windows, feature = "dox"))]
5658     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_filename_from_uri_utf8( uri: *const c_char, hostname: *mut *mut c_char, error: *mut *mut GError, ) -> *mut c_char5659     pub fn g_filename_from_uri_utf8(
5660         uri: *const c_char,
5661         hostname: *mut *mut c_char,
5662         error: *mut *mut GError,
5663     ) -> *mut c_char;
g_filename_from_uri( uri: *const c_char, hostname: *mut *mut c_char, error: *mut *mut GError, ) -> *mut c_char5664     pub fn g_filename_from_uri(
5665         uri: *const c_char,
5666         hostname: *mut *mut c_char,
5667         error: *mut *mut GError,
5668     ) -> *mut c_char;
5669     #[cfg(any(windows, feature = "dox"))]
5670     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_filename_from_utf8_utf8( utf8string: *const c_char, len: ssize_t, bytes_read: *mut size_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> *mut c_char5671     pub fn g_filename_from_utf8_utf8(
5672         utf8string: *const c_char,
5673         len: ssize_t,
5674         bytes_read: *mut size_t,
5675         bytes_written: *mut size_t,
5676         error: *mut *mut GError,
5677     ) -> *mut c_char;
g_filename_from_utf8( utf8string: *const c_char, len: ssize_t, bytes_read: *mut size_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> *mut c_char5678     pub fn g_filename_from_utf8(
5679         utf8string: *const c_char,
5680         len: ssize_t,
5681         bytes_read: *mut size_t,
5682         bytes_written: *mut size_t,
5683         error: *mut *mut GError,
5684     ) -> *mut c_char;
5685     #[cfg(any(windows, feature = "dox"))]
5686     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_filename_to_uri_utf8( filename: *const c_char, hostname: *const c_char, error: *mut *mut GError, ) -> *mut c_char5687     pub fn g_filename_to_uri_utf8(
5688         filename: *const c_char,
5689         hostname: *const c_char,
5690         error: *mut *mut GError,
5691     ) -> *mut c_char;
g_filename_to_uri( filename: *const c_char, hostname: *const c_char, error: *mut *mut GError, ) -> *mut c_char5692     pub fn g_filename_to_uri(
5693         filename: *const c_char,
5694         hostname: *const c_char,
5695         error: *mut *mut GError,
5696     ) -> *mut c_char;
5697     #[cfg(any(windows, feature = "dox"))]
5698     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_filename_to_utf8_utf8( opsysstring: *const c_char, len: ssize_t, bytes_read: *mut size_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> *mut c_char5699     pub fn g_filename_to_utf8_utf8(
5700         opsysstring: *const c_char,
5701         len: ssize_t,
5702         bytes_read: *mut size_t,
5703         bytes_written: *mut size_t,
5704         error: *mut *mut GError,
5705     ) -> *mut c_char;
g_filename_to_utf8( opsysstring: *const c_char, len: ssize_t, bytes_read: *mut size_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> *mut c_char5706     pub fn g_filename_to_utf8(
5707         opsysstring: *const c_char,
5708         len: ssize_t,
5709         bytes_read: *mut size_t,
5710         bytes_written: *mut size_t,
5711         error: *mut *mut GError,
5712     ) -> *mut c_char;
5713     #[cfg(any(windows, feature = "dox"))]
5714     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_find_program_in_path_utf8(program: *const c_char) -> *mut c_char5715     pub fn g_find_program_in_path_utf8(program: *const c_char) -> *mut c_char;
g_find_program_in_path(program: *const c_char) -> *mut c_char5716     pub fn g_find_program_in_path(program: *const c_char) -> *mut c_char;
g_format_size(size: u64) -> *mut c_char5717     pub fn g_format_size(size: u64) -> *mut c_char;
g_format_size_for_display(size: i64) -> *mut c_char5718     pub fn g_format_size_for_display(size: i64) -> *mut c_char;
g_format_size_full(size: u64, flags: GFormatSizeFlags) -> *mut c_char5719     pub fn g_format_size_full(size: u64, flags: GFormatSizeFlags) -> *mut c_char;
g_fprintf(file: *mut FILE, format: *const c_char, ...) -> c_int5720     pub fn g_fprintf(file: *mut FILE, format: *const c_char, ...) -> c_int;
g_free(mem: gpointer)5721     pub fn g_free(mem: gpointer);
g_get_application_name() -> *const c_char5722     pub fn g_get_application_name() -> *const c_char;
g_get_charset(charset: *mut *const c_char) -> gboolean5723     pub fn g_get_charset(charset: *mut *const c_char) -> gboolean;
g_get_codeset() -> *mut c_char5724     pub fn g_get_codeset() -> *mut c_char;
5725     #[cfg(any(feature = "v2_62", feature = "dox"))]
5726     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_get_console_charset(charset: *mut *const c_char) -> gboolean5727     pub fn g_get_console_charset(charset: *mut *const c_char) -> gboolean;
5728     #[cfg(any(windows, feature = "dox"))]
5729     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_get_current_dir_utf8() -> *mut c_char5730     pub fn g_get_current_dir_utf8() -> *mut c_char;
g_get_current_dir() -> *mut c_char5731     pub fn g_get_current_dir() -> *mut c_char;
g_get_current_time(result: *mut GTimeVal)5732     pub fn g_get_current_time(result: *mut GTimeVal);
g_get_environ() -> *mut *mut c_char5733     pub fn g_get_environ() -> *mut *mut c_char;
g_get_filename_charsets(filename_charsets: *mut *mut *const c_char) -> gboolean5734     pub fn g_get_filename_charsets(filename_charsets: *mut *mut *const c_char) -> gboolean;
5735     #[cfg(any(windows, feature = "dox"))]
5736     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_get_home_dir_utf8() -> *const c_char5737     pub fn g_get_home_dir_utf8() -> *const c_char;
g_get_home_dir() -> *const c_char5738     pub fn g_get_home_dir() -> *const c_char;
g_get_host_name() -> *const c_char5739     pub fn g_get_host_name() -> *const c_char;
g_get_language_names() -> *const *const c_char5740     pub fn g_get_language_names() -> *const *const c_char;
5741     #[cfg(any(feature = "v2_58", feature = "dox"))]
5742     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_get_language_names_with_category(category_name: *const c_char) -> *const *const c_char5743     pub fn g_get_language_names_with_category(category_name: *const c_char)
5744         -> *const *const c_char;
g_get_locale_variants(locale: *const c_char) -> *mut *mut c_char5745     pub fn g_get_locale_variants(locale: *const c_char) -> *mut *mut c_char;
g_get_monotonic_time() -> i645746     pub fn g_get_monotonic_time() -> i64;
g_get_num_processors() -> c_uint5747     pub fn g_get_num_processors() -> c_uint;
5748     #[cfg(any(feature = "v2_64", feature = "dox"))]
5749     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_64")))]
g_get_os_info(key_name: *const c_char) -> *mut c_char5750     pub fn g_get_os_info(key_name: *const c_char) -> *mut c_char;
g_get_prgname() -> *const c_char5751     pub fn g_get_prgname() -> *const c_char;
5752     #[cfg(any(windows, feature = "dox"))]
5753     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_get_real_name_utf8() -> *const c_char5754     pub fn g_get_real_name_utf8() -> *const c_char;
g_get_real_name() -> *const c_char5755     pub fn g_get_real_name() -> *const c_char;
g_get_real_time() -> i645756     pub fn g_get_real_time() -> i64;
g_get_system_config_dirs() -> *const *const c_char5757     pub fn g_get_system_config_dirs() -> *const *const c_char;
g_get_system_data_dirs() -> *const *const c_char5758     pub fn g_get_system_data_dirs() -> *const *const c_char;
5759     #[cfg(any(windows, feature = "dox"))]
5760     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_get_tmp_dir_utf8() -> *const c_char5761     pub fn g_get_tmp_dir_utf8() -> *const c_char;
g_get_tmp_dir() -> *const c_char5762     pub fn g_get_tmp_dir() -> *const c_char;
g_get_user_cache_dir() -> *const c_char5763     pub fn g_get_user_cache_dir() -> *const c_char;
g_get_user_config_dir() -> *const c_char5764     pub fn g_get_user_config_dir() -> *const c_char;
g_get_user_data_dir() -> *const c_char5765     pub fn g_get_user_data_dir() -> *const c_char;
5766     #[cfg(any(windows, feature = "dox"))]
5767     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_get_user_name_utf8() -> *const c_char5768     pub fn g_get_user_name_utf8() -> *const c_char;
g_get_user_name() -> *const c_char5769     pub fn g_get_user_name() -> *const c_char;
g_get_user_runtime_dir() -> *const c_char5770     pub fn g_get_user_runtime_dir() -> *const c_char;
g_get_user_special_dir(directory: GUserDirectory) -> *const c_char5771     pub fn g_get_user_special_dir(directory: GUserDirectory) -> *const c_char;
5772     #[cfg(any(windows, feature = "dox"))]
5773     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_getenv_utf8(variable: *const c_char) -> *const c_char5774     pub fn g_getenv_utf8(variable: *const c_char) -> *const c_char;
g_getenv(variable: *const c_char) -> *const c_char5775     pub fn g_getenv(variable: *const c_char) -> *const c_char;
g_hostname_is_ascii_encoded(hostname: *const c_char) -> gboolean5776     pub fn g_hostname_is_ascii_encoded(hostname: *const c_char) -> gboolean;
g_hostname_is_ip_address(hostname: *const c_char) -> gboolean5777     pub fn g_hostname_is_ip_address(hostname: *const c_char) -> gboolean;
g_hostname_is_non_ascii(hostname: *const c_char) -> gboolean5778     pub fn g_hostname_is_non_ascii(hostname: *const c_char) -> gboolean;
g_hostname_to_ascii(hostname: *const c_char) -> *mut c_char5779     pub fn g_hostname_to_ascii(hostname: *const c_char) -> *mut c_char;
g_hostname_to_unicode(hostname: *const c_char) -> *mut c_char5780     pub fn g_hostname_to_unicode(hostname: *const c_char) -> *mut c_char;
g_iconv( converter: GIConv, inbuf: *mut *mut c_char, inbytes_left: *mut size_t, outbuf: *mut *mut c_char, outbytes_left: *mut size_t, ) -> size_t5781     pub fn g_iconv(
5782         converter: GIConv,
5783         inbuf: *mut *mut c_char,
5784         inbytes_left: *mut size_t,
5785         outbuf: *mut *mut c_char,
5786         outbytes_left: *mut size_t,
5787     ) -> size_t;
g_idle_add(function: GSourceFunc, data: gpointer) -> c_uint5788     pub fn g_idle_add(function: GSourceFunc, data: gpointer) -> c_uint;
g_idle_add_full( priority: c_int, function: GSourceFunc, data: gpointer, notify: GDestroyNotify, ) -> c_uint5789     pub fn g_idle_add_full(
5790         priority: c_int,
5791         function: GSourceFunc,
5792         data: gpointer,
5793         notify: GDestroyNotify,
5794     ) -> c_uint;
g_idle_remove_by_data(data: gpointer) -> gboolean5795     pub fn g_idle_remove_by_data(data: gpointer) -> gboolean;
g_idle_source_new() -> *mut GSource5796     pub fn g_idle_source_new() -> *mut GSource;
g_int64_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean5797     pub fn g_int64_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean;
g_int64_hash(v: gconstpointer) -> c_uint5798     pub fn g_int64_hash(v: gconstpointer) -> c_uint;
g_int_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean5799     pub fn g_int_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean;
g_int_hash(v: gconstpointer) -> c_uint5800     pub fn g_int_hash(v: gconstpointer) -> c_uint;
g_intern_static_string(string: *const c_char) -> *const c_char5801     pub fn g_intern_static_string(string: *const c_char) -> *const c_char;
g_intern_string(string: *const c_char) -> *const c_char5802     pub fn g_intern_string(string: *const c_char) -> *const c_char;
g_io_add_watch( channel: *mut GIOChannel, condition: GIOCondition, func: GIOFunc, user_data: gpointer, ) -> c_uint5803     pub fn g_io_add_watch(
5804         channel: *mut GIOChannel,
5805         condition: GIOCondition,
5806         func: GIOFunc,
5807         user_data: gpointer,
5808     ) -> c_uint;
g_io_add_watch_full( channel: *mut GIOChannel, priority: c_int, condition: GIOCondition, func: GIOFunc, user_data: gpointer, notify: GDestroyNotify, ) -> c_uint5809     pub fn g_io_add_watch_full(
5810         channel: *mut GIOChannel,
5811         priority: c_int,
5812         condition: GIOCondition,
5813         func: GIOFunc,
5814         user_data: gpointer,
5815         notify: GDestroyNotify,
5816     ) -> c_uint;
g_io_create_watch(channel: *mut GIOChannel, condition: GIOCondition) -> *mut GSource5817     pub fn g_io_create_watch(channel: *mut GIOChannel, condition: GIOCondition) -> *mut GSource;
g_listenv() -> *mut *mut c_char5818     pub fn g_listenv() -> *mut *mut c_char;
g_locale_from_utf8( utf8string: *const c_char, len: ssize_t, bytes_read: *mut size_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> *mut u85819     pub fn g_locale_from_utf8(
5820         utf8string: *const c_char,
5821         len: ssize_t,
5822         bytes_read: *mut size_t,
5823         bytes_written: *mut size_t,
5824         error: *mut *mut GError,
5825     ) -> *mut u8;
g_locale_to_utf8( opsysstring: *const u8, len: ssize_t, bytes_read: *mut size_t, bytes_written: *mut size_t, error: *mut *mut GError, ) -> *mut c_char5826     pub fn g_locale_to_utf8(
5827         opsysstring: *const u8,
5828         len: ssize_t,
5829         bytes_read: *mut size_t,
5830         bytes_written: *mut size_t,
5831         error: *mut *mut GError,
5832     ) -> *mut c_char;
g_log(log_domain: *const c_char, log_level: GLogLevelFlags, format: *const c_char, ...)5833     pub fn g_log(log_domain: *const c_char, log_level: GLogLevelFlags, format: *const c_char, ...);
g_log_default_handler( log_domain: *const c_char, log_level: GLogLevelFlags, message: *const c_char, unused_data: gpointer, )5834     pub fn g_log_default_handler(
5835         log_domain: *const c_char,
5836         log_level: GLogLevelFlags,
5837         message: *const c_char,
5838         unused_data: gpointer,
5839     );
g_log_remove_handler(log_domain: *const c_char, handler_id: c_uint)5840     pub fn g_log_remove_handler(log_domain: *const c_char, handler_id: c_uint);
g_log_set_always_fatal(fatal_mask: GLogLevelFlags) -> GLogLevelFlags5841     pub fn g_log_set_always_fatal(fatal_mask: GLogLevelFlags) -> GLogLevelFlags;
g_log_set_default_handler(log_func: GLogFunc, user_data: gpointer) -> GLogFunc5842     pub fn g_log_set_default_handler(log_func: GLogFunc, user_data: gpointer) -> GLogFunc;
g_log_set_fatal_mask( log_domain: *const c_char, fatal_mask: GLogLevelFlags, ) -> GLogLevelFlags5843     pub fn g_log_set_fatal_mask(
5844         log_domain: *const c_char,
5845         fatal_mask: GLogLevelFlags,
5846     ) -> GLogLevelFlags;
g_log_set_handler( log_domain: *const c_char, log_levels: GLogLevelFlags, log_func: GLogFunc, user_data: gpointer, ) -> c_uint5847     pub fn g_log_set_handler(
5848         log_domain: *const c_char,
5849         log_levels: GLogLevelFlags,
5850         log_func: GLogFunc,
5851         user_data: gpointer,
5852     ) -> c_uint;
g_log_set_handler_full( log_domain: *const c_char, log_levels: GLogLevelFlags, log_func: GLogFunc, user_data: gpointer, destroy: GDestroyNotify, ) -> c_uint5853     pub fn g_log_set_handler_full(
5854         log_domain: *const c_char,
5855         log_levels: GLogLevelFlags,
5856         log_func: GLogFunc,
5857         user_data: gpointer,
5858         destroy: GDestroyNotify,
5859     ) -> c_uint;
5860     #[cfg(any(feature = "v2_50", feature = "dox"))]
5861     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_set_writer_func( func: GLogWriterFunc, user_data: gpointer, user_data_free: GDestroyNotify, )5862     pub fn g_log_set_writer_func(
5863         func: GLogWriterFunc,
5864         user_data: gpointer,
5865         user_data_free: GDestroyNotify,
5866     );
5867     #[cfg(any(feature = "v2_50", feature = "dox"))]
5868     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_structured(log_domain: *const c_char, log_level: GLogLevelFlags, ...)5869     pub fn g_log_structured(log_domain: *const c_char, log_level: GLogLevelFlags, ...);
5870     #[cfg(any(feature = "v2_50", feature = "dox"))]
5871     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_structured_array( log_level: GLogLevelFlags, fields: *const GLogField, n_fields: size_t, )5872     pub fn g_log_structured_array(
5873         log_level: GLogLevelFlags,
5874         fields: *const GLogField,
5875         n_fields: size_t,
5876     );
g_log_structured_standard( log_domain: *const c_char, log_level: GLogLevelFlags, file: *const c_char, line: *const c_char, func: *const c_char, message_format: *const c_char, ... )5877     pub fn g_log_structured_standard(
5878         log_domain: *const c_char,
5879         log_level: GLogLevelFlags,
5880         file: *const c_char,
5881         line: *const c_char,
5882         func: *const c_char,
5883         message_format: *const c_char,
5884         ...
5885     );
5886     #[cfg(any(feature = "v2_50", feature = "dox"))]
5887     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_variant( log_domain: *const c_char, log_level: GLogLevelFlags, fields: *mut GVariant, )5888     pub fn g_log_variant(
5889         log_domain: *const c_char,
5890         log_level: GLogLevelFlags,
5891         fields: *mut GVariant,
5892     );
5893     #[cfg(any(feature = "v2_50", feature = "dox"))]
5894     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_writer_default( log_level: GLogLevelFlags, fields: *const GLogField, n_fields: size_t, user_data: gpointer, ) -> GLogWriterOutput5895     pub fn g_log_writer_default(
5896         log_level: GLogLevelFlags,
5897         fields: *const GLogField,
5898         n_fields: size_t,
5899         user_data: gpointer,
5900     ) -> GLogWriterOutput;
5901     #[cfg(any(feature = "v2_50", feature = "dox"))]
5902     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_writer_format_fields( log_level: GLogLevelFlags, fields: *const GLogField, n_fields: size_t, use_color: gboolean, ) -> *mut c_char5903     pub fn g_log_writer_format_fields(
5904         log_level: GLogLevelFlags,
5905         fields: *const GLogField,
5906         n_fields: size_t,
5907         use_color: gboolean,
5908     ) -> *mut c_char;
5909     #[cfg(any(feature = "v2_50", feature = "dox"))]
5910     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_writer_is_journald(output_fd: c_int) -> gboolean5911     pub fn g_log_writer_is_journald(output_fd: c_int) -> gboolean;
5912     #[cfg(any(feature = "v2_50", feature = "dox"))]
5913     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_writer_journald( log_level: GLogLevelFlags, fields: *const GLogField, n_fields: size_t, user_data: gpointer, ) -> GLogWriterOutput5914     pub fn g_log_writer_journald(
5915         log_level: GLogLevelFlags,
5916         fields: *const GLogField,
5917         n_fields: size_t,
5918         user_data: gpointer,
5919     ) -> GLogWriterOutput;
5920     #[cfg(any(feature = "v2_50", feature = "dox"))]
5921     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_writer_standard_streams( log_level: GLogLevelFlags, fields: *const GLogField, n_fields: size_t, user_data: gpointer, ) -> GLogWriterOutput5922     pub fn g_log_writer_standard_streams(
5923         log_level: GLogLevelFlags,
5924         fields: *const GLogField,
5925         n_fields: size_t,
5926         user_data: gpointer,
5927     ) -> GLogWriterOutput;
5928     #[cfg(any(feature = "v2_50", feature = "dox"))]
5929     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_50")))]
g_log_writer_supports_color(output_fd: c_int) -> gboolean5930     pub fn g_log_writer_supports_color(output_fd: c_int) -> gboolean;
5931     //pub fn g_logv(log_domain: *const c_char, log_level: GLogLevelFlags, format: *const c_char, args: /*Unimplemented*/va_list);
g_main_current_source() -> *mut GSource5932     pub fn g_main_current_source() -> *mut GSource;
g_main_depth() -> c_int5933     pub fn g_main_depth() -> c_int;
g_malloc(n_bytes: size_t) -> gpointer5934     pub fn g_malloc(n_bytes: size_t) -> gpointer;
g_malloc0(n_bytes: size_t) -> gpointer5935     pub fn g_malloc0(n_bytes: size_t) -> gpointer;
g_malloc0_n(n_blocks: size_t, n_block_bytes: size_t) -> gpointer5936     pub fn g_malloc0_n(n_blocks: size_t, n_block_bytes: size_t) -> gpointer;
g_malloc_n(n_blocks: size_t, n_block_bytes: size_t) -> gpointer5937     pub fn g_malloc_n(n_blocks: size_t, n_block_bytes: size_t) -> gpointer;
g_markup_collect_attributes( element_name: *const c_char, attribute_names: *mut *const c_char, attribute_values: *mut *const c_char, error: *mut *mut GError, first_type: GMarkupCollectType, first_attr: *const c_char, ... ) -> gboolean5938     pub fn g_markup_collect_attributes(
5939         element_name: *const c_char,
5940         attribute_names: *mut *const c_char,
5941         attribute_values: *mut *const c_char,
5942         error: *mut *mut GError,
5943         first_type: GMarkupCollectType,
5944         first_attr: *const c_char,
5945         ...
5946     ) -> gboolean;
g_markup_error_quark() -> GQuark5947     pub fn g_markup_error_quark() -> GQuark;
g_markup_escape_text(text: *const c_char, length: ssize_t) -> *mut c_char5948     pub fn g_markup_escape_text(text: *const c_char, length: ssize_t) -> *mut c_char;
g_markup_printf_escaped(format: *const c_char, ...) -> *mut c_char5949     pub fn g_markup_printf_escaped(format: *const c_char, ...) -> *mut c_char;
5950     //pub fn g_markup_vprintf_escaped(format: *const c_char, args: /*Unimplemented*/va_list) -> *mut c_char;
g_mem_is_system_malloc() -> gboolean5951     pub fn g_mem_is_system_malloc() -> gboolean;
g_mem_profile()5952     pub fn g_mem_profile();
g_mem_set_vtable(vtable: *mut GMemVTable)5953     pub fn g_mem_set_vtable(vtable: *mut GMemVTable);
g_memdup(mem: gconstpointer, byte_size: c_uint) -> gpointer5954     pub fn g_memdup(mem: gconstpointer, byte_size: c_uint) -> gpointer;
g_mkdir_with_parents(pathname: *const c_char, mode: c_int) -> c_int5955     pub fn g_mkdir_with_parents(pathname: *const c_char, mode: c_int) -> c_int;
g_mkdtemp(tmpl: *mut c_char) -> *mut c_char5956     pub fn g_mkdtemp(tmpl: *mut c_char) -> *mut c_char;
g_mkdtemp_full(tmpl: *mut c_char, mode: c_int) -> *mut c_char5957     pub fn g_mkdtemp_full(tmpl: *mut c_char, mode: c_int) -> *mut c_char;
5958     #[cfg(any(windows, feature = "dox"))]
5959     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_mkstemp_utf8(tmpl: *mut c_char) -> c_int5960     pub fn g_mkstemp_utf8(tmpl: *mut c_char) -> c_int;
g_mkstemp(tmpl: *mut c_char) -> c_int5961     pub fn g_mkstemp(tmpl: *mut c_char) -> c_int;
g_mkstemp_full(tmpl: *mut c_char, flags: c_int, mode: c_int) -> c_int5962     pub fn g_mkstemp_full(tmpl: *mut c_char, flags: c_int, mode: c_int) -> c_int;
g_nullify_pointer(nullify_location: *mut gpointer)5963     pub fn g_nullify_pointer(nullify_location: *mut gpointer);
g_number_parser_error_quark() -> GQuark5964     pub fn g_number_parser_error_quark() -> GQuark;
g_on_error_query(prg_name: *const c_char)5965     pub fn g_on_error_query(prg_name: *const c_char);
g_on_error_stack_trace(prg_name: *const c_char)5966     pub fn g_on_error_stack_trace(prg_name: *const c_char);
g_option_error_quark() -> GQuark5967     pub fn g_option_error_quark() -> GQuark;
g_parse_debug_string( string: *const c_char, keys: *const GDebugKey, nkeys: c_uint, ) -> c_uint5968     pub fn g_parse_debug_string(
5969         string: *const c_char,
5970         keys: *const GDebugKey,
5971         nkeys: c_uint,
5972     ) -> c_uint;
g_path_get_basename(file_name: *const c_char) -> *mut c_char5973     pub fn g_path_get_basename(file_name: *const c_char) -> *mut c_char;
g_path_get_dirname(file_name: *const c_char) -> *mut c_char5974     pub fn g_path_get_dirname(file_name: *const c_char) -> *mut c_char;
g_path_is_absolute(file_name: *const c_char) -> gboolean5975     pub fn g_path_is_absolute(file_name: *const c_char) -> gboolean;
g_path_skip_root(file_name: *const c_char) -> *const c_char5976     pub fn g_path_skip_root(file_name: *const c_char) -> *const c_char;
g_pattern_match( pspec: *mut GPatternSpec, string_length: c_uint, string: *const c_char, string_reversed: *const c_char, ) -> gboolean5977     pub fn g_pattern_match(
5978         pspec: *mut GPatternSpec,
5979         string_length: c_uint,
5980         string: *const c_char,
5981         string_reversed: *const c_char,
5982     ) -> gboolean;
g_pattern_match_simple(pattern: *const c_char, string: *const c_char) -> gboolean5983     pub fn g_pattern_match_simple(pattern: *const c_char, string: *const c_char) -> gboolean;
g_pattern_match_string(pspec: *mut GPatternSpec, string: *const c_char) -> gboolean5984     pub fn g_pattern_match_string(pspec: *mut GPatternSpec, string: *const c_char) -> gboolean;
g_pointer_bit_lock(address: *mut c_void, lock_bit: c_int)5985     pub fn g_pointer_bit_lock(address: *mut c_void, lock_bit: c_int);
g_pointer_bit_trylock(address: *mut c_void, lock_bit: c_int) -> gboolean5986     pub fn g_pointer_bit_trylock(address: *mut c_void, lock_bit: c_int) -> gboolean;
g_pointer_bit_unlock(address: *mut c_void, lock_bit: c_int)5987     pub fn g_pointer_bit_unlock(address: *mut c_void, lock_bit: c_int);
g_poll(fds: *mut GPollFD, nfds: c_uint, timeout: c_int) -> c_int5988     pub fn g_poll(fds: *mut GPollFD, nfds: c_uint, timeout: c_int) -> c_int;
g_prefix_error(err: *mut *mut GError, format: *const c_char, ...)5989     pub fn g_prefix_error(err: *mut *mut GError, format: *const c_char, ...);
g_print(format: *const c_char, ...)5990     pub fn g_print(format: *const c_char, ...);
g_printerr(format: *const c_char, ...)5991     pub fn g_printerr(format: *const c_char, ...);
g_printf(format: *const c_char, ...) -> c_int5992     pub fn g_printf(format: *const c_char, ...) -> c_int;
5993     //pub fn g_printf_string_upper_bound(format: *const c_char, args: /*Unimplemented*/va_list) -> size_t;
g_propagate_error(dest: *mut *mut GError, src: *mut GError)5994     pub fn g_propagate_error(dest: *mut *mut GError, src: *mut GError);
g_propagate_prefixed_error( dest: *mut *mut GError, src: *mut GError, format: *const c_char, ... )5995     pub fn g_propagate_prefixed_error(
5996         dest: *mut *mut GError,
5997         src: *mut GError,
5998         format: *const c_char,
5999         ...
6000     );
g_qsort_with_data( pbase: gconstpointer, total_elems: c_int, size: size_t, compare_func: GCompareDataFunc, user_data: gpointer, )6001     pub fn g_qsort_with_data(
6002         pbase: gconstpointer,
6003         total_elems: c_int,
6004         size: size_t,
6005         compare_func: GCompareDataFunc,
6006         user_data: gpointer,
6007     );
g_quark_from_static_string(string: *const c_char) -> GQuark6008     pub fn g_quark_from_static_string(string: *const c_char) -> GQuark;
g_quark_from_string(string: *const c_char) -> GQuark6009     pub fn g_quark_from_string(string: *const c_char) -> GQuark;
g_quark_to_string(quark: GQuark) -> *const c_char6010     pub fn g_quark_to_string(quark: GQuark) -> *const c_char;
g_quark_try_string(string: *const c_char) -> GQuark6011     pub fn g_quark_try_string(string: *const c_char) -> GQuark;
g_random_double() -> c_double6012     pub fn g_random_double() -> c_double;
g_random_double_range(begin: c_double, end: c_double) -> c_double6013     pub fn g_random_double_range(begin: c_double, end: c_double) -> c_double;
g_random_int() -> u326014     pub fn g_random_int() -> u32;
g_random_int_range(begin: i32, end: i32) -> i326015     pub fn g_random_int_range(begin: i32, end: i32) -> i32;
g_random_set_seed(seed: u32)6016     pub fn g_random_set_seed(seed: u32);
6017     #[cfg(any(feature = "v2_58", feature = "dox"))]
6018     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_rc_box_acquire(mem_block: gpointer) -> gpointer6019     pub fn g_rc_box_acquire(mem_block: gpointer) -> gpointer;
6020     #[cfg(any(feature = "v2_58", feature = "dox"))]
6021     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_rc_box_alloc(block_size: size_t) -> gpointer6022     pub fn g_rc_box_alloc(block_size: size_t) -> gpointer;
6023     #[cfg(any(feature = "v2_58", feature = "dox"))]
6024     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_rc_box_alloc0(block_size: size_t) -> gpointer6025     pub fn g_rc_box_alloc0(block_size: size_t) -> gpointer;
6026     #[cfg(any(feature = "v2_58", feature = "dox"))]
6027     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_rc_box_dup(block_size: size_t, mem_block: gconstpointer) -> gpointer6028     pub fn g_rc_box_dup(block_size: size_t, mem_block: gconstpointer) -> gpointer;
6029     #[cfg(any(feature = "v2_58", feature = "dox"))]
6030     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_rc_box_get_size(mem_block: gpointer) -> size_t6031     pub fn g_rc_box_get_size(mem_block: gpointer) -> size_t;
6032     #[cfg(any(feature = "v2_58", feature = "dox"))]
6033     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_rc_box_release(mem_block: gpointer)6034     pub fn g_rc_box_release(mem_block: gpointer);
6035     #[cfg(any(feature = "v2_58", feature = "dox"))]
6036     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_rc_box_release_full(mem_block: gpointer, clear_func: GDestroyNotify)6037     pub fn g_rc_box_release_full(mem_block: gpointer, clear_func: GDestroyNotify);
g_realloc(mem: gpointer, n_bytes: size_t) -> gpointer6038     pub fn g_realloc(mem: gpointer, n_bytes: size_t) -> gpointer;
g_realloc_n(mem: gpointer, n_blocks: size_t, n_block_bytes: size_t) -> gpointer6039     pub fn g_realloc_n(mem: gpointer, n_blocks: size_t, n_block_bytes: size_t) -> gpointer;
6040     #[cfg(any(feature = "v2_58", feature = "dox"))]
6041     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_count_compare(rc: *mut c_int, val: c_int) -> gboolean6042     pub fn g_ref_count_compare(rc: *mut c_int, val: c_int) -> gboolean;
6043     #[cfg(any(feature = "v2_58", feature = "dox"))]
6044     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_count_dec(rc: *mut c_int) -> gboolean6045     pub fn g_ref_count_dec(rc: *mut c_int) -> gboolean;
6046     #[cfg(any(feature = "v2_58", feature = "dox"))]
6047     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_count_inc(rc: *mut c_int)6048     pub fn g_ref_count_inc(rc: *mut c_int);
6049     #[cfg(any(feature = "v2_58", feature = "dox"))]
6050     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_count_init(rc: *mut c_int)6051     pub fn g_ref_count_init(rc: *mut c_int);
6052     #[cfg(any(feature = "v2_58", feature = "dox"))]
6053     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_string_acquire(str: *mut c_char) -> *mut c_char6054     pub fn g_ref_string_acquire(str: *mut c_char) -> *mut c_char;
6055     #[cfg(any(feature = "v2_58", feature = "dox"))]
6056     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_string_length(str: *mut c_char) -> size_t6057     pub fn g_ref_string_length(str: *mut c_char) -> size_t;
6058     #[cfg(any(feature = "v2_58", feature = "dox"))]
6059     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_string_new(str: *const c_char) -> *mut c_char6060     pub fn g_ref_string_new(str: *const c_char) -> *mut c_char;
6061     #[cfg(any(feature = "v2_58", feature = "dox"))]
6062     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_string_new_intern(str: *const c_char) -> *mut c_char6063     pub fn g_ref_string_new_intern(str: *const c_char) -> *mut c_char;
6064     #[cfg(any(feature = "v2_58", feature = "dox"))]
6065     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_string_new_len(str: *const c_char, len: ssize_t) -> *mut c_char6066     pub fn g_ref_string_new_len(str: *const c_char, len: ssize_t) -> *mut c_char;
6067     #[cfg(any(feature = "v2_58", feature = "dox"))]
6068     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_ref_string_release(str: *mut c_char)6069     pub fn g_ref_string_release(str: *mut c_char);
g_reload_user_special_dirs_cache()6070     pub fn g_reload_user_special_dirs_cache();
g_return_if_fail_warning( log_domain: *const c_char, pretty_function: *const c_char, expression: *const c_char, )6071     pub fn g_return_if_fail_warning(
6072         log_domain: *const c_char,
6073         pretty_function: *const c_char,
6074         expression: *const c_char,
6075     );
g_rmdir(filename: *const c_char) -> c_int6076     pub fn g_rmdir(filename: *const c_char) -> c_int;
g_set_application_name(application_name: *const c_char)6077     pub fn g_set_application_name(application_name: *const c_char);
g_set_error( err: *mut *mut GError, domain: GQuark, code: c_int, format: *const c_char, ... )6078     pub fn g_set_error(
6079         err: *mut *mut GError,
6080         domain: GQuark,
6081         code: c_int,
6082         format: *const c_char,
6083         ...
6084     );
g_set_error_literal( err: *mut *mut GError, domain: GQuark, code: c_int, message: *const c_char, )6085     pub fn g_set_error_literal(
6086         err: *mut *mut GError,
6087         domain: GQuark,
6088         code: c_int,
6089         message: *const c_char,
6090     );
g_set_prgname(prgname: *const c_char)6091     pub fn g_set_prgname(prgname: *const c_char);
g_set_print_handler(func: GPrintFunc) -> GPrintFunc6092     pub fn g_set_print_handler(func: GPrintFunc) -> GPrintFunc;
g_set_printerr_handler(func: GPrintFunc) -> GPrintFunc6093     pub fn g_set_printerr_handler(func: GPrintFunc) -> GPrintFunc;
6094     #[cfg(any(windows, feature = "dox"))]
6095     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_setenv_utf8( variable: *const c_char, value: *const c_char, overwrite: gboolean, ) -> gboolean6096     pub fn g_setenv_utf8(
6097         variable: *const c_char,
6098         value: *const c_char,
6099         overwrite: gboolean,
6100     ) -> gboolean;
g_setenv(variable: *const c_char, value: *const c_char, overwrite: gboolean) -> gboolean6101     pub fn g_setenv(variable: *const c_char, value: *const c_char, overwrite: gboolean)
6102         -> gboolean;
g_shell_error_quark() -> GQuark6103     pub fn g_shell_error_quark() -> GQuark;
g_shell_parse_argv( command_line: *const c_char, argcp: *mut c_int, argvp: *mut *mut *mut c_char, error: *mut *mut GError, ) -> gboolean6104     pub fn g_shell_parse_argv(
6105         command_line: *const c_char,
6106         argcp: *mut c_int,
6107         argvp: *mut *mut *mut c_char,
6108         error: *mut *mut GError,
6109     ) -> gboolean;
g_shell_quote(unquoted_string: *const c_char) -> *mut c_char6110     pub fn g_shell_quote(unquoted_string: *const c_char) -> *mut c_char;
g_shell_unquote(quoted_string: *const c_char, error: *mut *mut GError) -> *mut c_char6111     pub fn g_shell_unquote(quoted_string: *const c_char, error: *mut *mut GError) -> *mut c_char;
g_slice_alloc(block_size: size_t) -> gpointer6112     pub fn g_slice_alloc(block_size: size_t) -> gpointer;
g_slice_alloc0(block_size: size_t) -> gpointer6113     pub fn g_slice_alloc0(block_size: size_t) -> gpointer;
g_slice_copy(block_size: size_t, mem_block: gconstpointer) -> gpointer6114     pub fn g_slice_copy(block_size: size_t, mem_block: gconstpointer) -> gpointer;
g_slice_free1(block_size: size_t, mem_block: gpointer)6115     pub fn g_slice_free1(block_size: size_t, mem_block: gpointer);
g_slice_free_chain_with_offset( block_size: size_t, mem_chain: gpointer, next_offset: size_t, )6116     pub fn g_slice_free_chain_with_offset(
6117         block_size: size_t,
6118         mem_chain: gpointer,
6119         next_offset: size_t,
6120     );
g_slice_get_config(ckey: GSliceConfig) -> i646121     pub fn g_slice_get_config(ckey: GSliceConfig) -> i64;
g_slice_get_config_state( ckey: GSliceConfig, address: i64, n_values: *mut c_uint, ) -> *mut i646122     pub fn g_slice_get_config_state(
6123         ckey: GSliceConfig,
6124         address: i64,
6125         n_values: *mut c_uint,
6126     ) -> *mut i64;
g_slice_set_config(ckey: GSliceConfig, value: i64)6127     pub fn g_slice_set_config(ckey: GSliceConfig, value: i64);
g_snprintf(string: *mut c_char, n: c_ulong, format: *const c_char, ...) -> c_int6128     pub fn g_snprintf(string: *mut c_char, n: c_ulong, format: *const c_char, ...) -> c_int;
g_spaced_primes_closest(num: c_uint) -> c_uint6129     pub fn g_spaced_primes_closest(num: c_uint) -> c_uint;
6130     #[cfg(any(windows, feature = "dox"))]
6131     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_spawn_async_utf8( working_directory: *const c_char, argv: *mut *mut c_char, envp: *mut *mut c_char, flags: GSpawnFlags, child_setup: GSpawnChildSetupFunc, user_data: gpointer, child_pid: *mut GPid, error: *mut *mut GError, ) -> gboolean6132     pub fn g_spawn_async_utf8(
6133         working_directory: *const c_char,
6134         argv: *mut *mut c_char,
6135         envp: *mut *mut c_char,
6136         flags: GSpawnFlags,
6137         child_setup: GSpawnChildSetupFunc,
6138         user_data: gpointer,
6139         child_pid: *mut GPid,
6140         error: *mut *mut GError,
6141     ) -> gboolean;
g_spawn_async( working_directory: *const c_char, argv: *mut *mut c_char, envp: *mut *mut c_char, flags: GSpawnFlags, child_setup: GSpawnChildSetupFunc, user_data: gpointer, child_pid: *mut GPid, error: *mut *mut GError, ) -> gboolean6142     pub fn g_spawn_async(
6143         working_directory: *const c_char,
6144         argv: *mut *mut c_char,
6145         envp: *mut *mut c_char,
6146         flags: GSpawnFlags,
6147         child_setup: GSpawnChildSetupFunc,
6148         user_data: gpointer,
6149         child_pid: *mut GPid,
6150         error: *mut *mut GError,
6151     ) -> gboolean;
6152     #[cfg(any(feature = "v2_58", feature = "dox"))]
6153     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
6154     #[cfg(any(windows, feature = "dox"))]
6155     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_spawn_async_with_fds_utf8( working_directory: *const c_char, argv: *mut *mut c_char, envp: *mut *mut c_char, flags: GSpawnFlags, child_setup: GSpawnChildSetupFunc, user_data: gpointer, child_pid: *mut GPid, stdin_fd: c_int, stdout_fd: c_int, stderr_fd: c_int, error: *mut *mut GError, ) -> gboolean6156     pub fn g_spawn_async_with_fds_utf8(
6157         working_directory: *const c_char,
6158         argv: *mut *mut c_char,
6159         envp: *mut *mut c_char,
6160         flags: GSpawnFlags,
6161         child_setup: GSpawnChildSetupFunc,
6162         user_data: gpointer,
6163         child_pid: *mut GPid,
6164         stdin_fd: c_int,
6165         stdout_fd: c_int,
6166         stderr_fd: c_int,
6167         error: *mut *mut GError,
6168     ) -> gboolean;
6169     #[cfg(any(feature = "v2_58", feature = "dox"))]
6170     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_58")))]
g_spawn_async_with_fds( working_directory: *const c_char, argv: *mut *mut c_char, envp: *mut *mut c_char, flags: GSpawnFlags, child_setup: GSpawnChildSetupFunc, user_data: gpointer, child_pid: *mut GPid, stdin_fd: c_int, stdout_fd: c_int, stderr_fd: c_int, error: *mut *mut GError, ) -> gboolean6171     pub fn g_spawn_async_with_fds(
6172         working_directory: *const c_char,
6173         argv: *mut *mut c_char,
6174         envp: *mut *mut c_char,
6175         flags: GSpawnFlags,
6176         child_setup: GSpawnChildSetupFunc,
6177         user_data: gpointer,
6178         child_pid: *mut GPid,
6179         stdin_fd: c_int,
6180         stdout_fd: c_int,
6181         stderr_fd: c_int,
6182         error: *mut *mut GError,
6183     ) -> gboolean;
6184     #[cfg(any(windows, feature = "dox"))]
6185     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_spawn_async_with_pipes_utf8( working_directory: *const c_char, argv: *mut *mut c_char, envp: *mut *mut c_char, flags: GSpawnFlags, child_setup: GSpawnChildSetupFunc, user_data: gpointer, child_pid: *mut GPid, standard_input: *mut c_int, standard_output: *mut c_int, standard_error: *mut c_int, error: *mut *mut GError, ) -> gboolean6186     pub fn g_spawn_async_with_pipes_utf8(
6187         working_directory: *const c_char,
6188         argv: *mut *mut c_char,
6189         envp: *mut *mut c_char,
6190         flags: GSpawnFlags,
6191         child_setup: GSpawnChildSetupFunc,
6192         user_data: gpointer,
6193         child_pid: *mut GPid,
6194         standard_input: *mut c_int,
6195         standard_output: *mut c_int,
6196         standard_error: *mut c_int,
6197         error: *mut *mut GError,
6198     ) -> gboolean;
g_spawn_async_with_pipes( working_directory: *const c_char, argv: *mut *mut c_char, envp: *mut *mut c_char, flags: GSpawnFlags, child_setup: GSpawnChildSetupFunc, user_data: gpointer, child_pid: *mut GPid, standard_input: *mut c_int, standard_output: *mut c_int, standard_error: *mut c_int, error: *mut *mut GError, ) -> gboolean6199     pub fn g_spawn_async_with_pipes(
6200         working_directory: *const c_char,
6201         argv: *mut *mut c_char,
6202         envp: *mut *mut c_char,
6203         flags: GSpawnFlags,
6204         child_setup: GSpawnChildSetupFunc,
6205         user_data: gpointer,
6206         child_pid: *mut GPid,
6207         standard_input: *mut c_int,
6208         standard_output: *mut c_int,
6209         standard_error: *mut c_int,
6210         error: *mut *mut GError,
6211     ) -> gboolean;
g_spawn_check_exit_status(exit_status: c_int, error: *mut *mut GError) -> gboolean6212     pub fn g_spawn_check_exit_status(exit_status: c_int, error: *mut *mut GError) -> gboolean;
g_spawn_close_pid(pid: GPid)6213     pub fn g_spawn_close_pid(pid: GPid);
6214     #[cfg(any(windows, feature = "dox"))]
6215     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_spawn_command_line_async_utf8( command_line: *const c_char, error: *mut *mut GError, ) -> gboolean6216     pub fn g_spawn_command_line_async_utf8(
6217         command_line: *const c_char,
6218         error: *mut *mut GError,
6219     ) -> gboolean;
g_spawn_command_line_async( command_line: *const c_char, error: *mut *mut GError, ) -> gboolean6220     pub fn g_spawn_command_line_async(
6221         command_line: *const c_char,
6222         error: *mut *mut GError,
6223     ) -> gboolean;
6224     #[cfg(any(windows, feature = "dox"))]
6225     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_spawn_command_line_sync_utf8( command_line: *const c_char, standard_output: *mut *mut u8, standard_error: *mut *mut u8, exit_status: *mut c_int, error: *mut *mut GError, ) -> gboolean6226     pub fn g_spawn_command_line_sync_utf8(
6227         command_line: *const c_char,
6228         standard_output: *mut *mut u8,
6229         standard_error: *mut *mut u8,
6230         exit_status: *mut c_int,
6231         error: *mut *mut GError,
6232     ) -> gboolean;
g_spawn_command_line_sync( command_line: *const c_char, standard_output: *mut *mut u8, standard_error: *mut *mut u8, exit_status: *mut c_int, error: *mut *mut GError, ) -> gboolean6233     pub fn g_spawn_command_line_sync(
6234         command_line: *const c_char,
6235         standard_output: *mut *mut u8,
6236         standard_error: *mut *mut u8,
6237         exit_status: *mut c_int,
6238         error: *mut *mut GError,
6239     ) -> gboolean;
g_spawn_error_quark() -> GQuark6240     pub fn g_spawn_error_quark() -> GQuark;
g_spawn_exit_error_quark() -> GQuark6241     pub fn g_spawn_exit_error_quark() -> GQuark;
6242     #[cfg(any(windows, feature = "dox"))]
6243     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_spawn_sync_utf8( working_directory: *const c_char, argv: *mut *mut c_char, envp: *mut *mut c_char, flags: GSpawnFlags, child_setup: GSpawnChildSetupFunc, user_data: gpointer, standard_output: *mut *mut u8, standard_error: *mut *mut u8, exit_status: *mut c_int, error: *mut *mut GError, ) -> gboolean6244     pub fn g_spawn_sync_utf8(
6245         working_directory: *const c_char,
6246         argv: *mut *mut c_char,
6247         envp: *mut *mut c_char,
6248         flags: GSpawnFlags,
6249         child_setup: GSpawnChildSetupFunc,
6250         user_data: gpointer,
6251         standard_output: *mut *mut u8,
6252         standard_error: *mut *mut u8,
6253         exit_status: *mut c_int,
6254         error: *mut *mut GError,
6255     ) -> gboolean;
g_spawn_sync( working_directory: *const c_char, argv: *mut *mut c_char, envp: *mut *mut c_char, flags: GSpawnFlags, child_setup: GSpawnChildSetupFunc, user_data: gpointer, standard_output: *mut *mut u8, standard_error: *mut *mut u8, exit_status: *mut c_int, error: *mut *mut GError, ) -> gboolean6256     pub fn g_spawn_sync(
6257         working_directory: *const c_char,
6258         argv: *mut *mut c_char,
6259         envp: *mut *mut c_char,
6260         flags: GSpawnFlags,
6261         child_setup: GSpawnChildSetupFunc,
6262         user_data: gpointer,
6263         standard_output: *mut *mut u8,
6264         standard_error: *mut *mut u8,
6265         exit_status: *mut c_int,
6266         error: *mut *mut GError,
6267     ) -> gboolean;
g_sprintf(string: *mut c_char, format: *const c_char, ...) -> c_int6268     pub fn g_sprintf(string: *mut c_char, format: *const c_char, ...) -> c_int;
g_stpcpy(dest: *mut c_char, src: *const c_char) -> *mut c_char6269     pub fn g_stpcpy(dest: *mut c_char, src: *const c_char) -> *mut c_char;
g_str_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean6270     pub fn g_str_equal(v1: gconstpointer, v2: gconstpointer) -> gboolean;
g_str_has_prefix(str: *const c_char, prefix: *const c_char) -> gboolean6271     pub fn g_str_has_prefix(str: *const c_char, prefix: *const c_char) -> gboolean;
g_str_has_suffix(str: *const c_char, suffix: *const c_char) -> gboolean6272     pub fn g_str_has_suffix(str: *const c_char, suffix: *const c_char) -> gboolean;
g_str_hash(v: gconstpointer) -> c_uint6273     pub fn g_str_hash(v: gconstpointer) -> c_uint;
g_str_is_ascii(str: *const c_char) -> gboolean6274     pub fn g_str_is_ascii(str: *const c_char) -> gboolean;
g_str_match_string( search_term: *const c_char, potential_hit: *const c_char, accept_alternates: gboolean, ) -> gboolean6275     pub fn g_str_match_string(
6276         search_term: *const c_char,
6277         potential_hit: *const c_char,
6278         accept_alternates: gboolean,
6279     ) -> gboolean;
g_str_to_ascii(str: *const c_char, from_locale: *const c_char) -> *mut c_char6280     pub fn g_str_to_ascii(str: *const c_char, from_locale: *const c_char) -> *mut c_char;
g_str_tokenize_and_fold( string: *const c_char, translit_locale: *const c_char, ascii_alternates: *mut *mut *mut c_char, ) -> *mut *mut c_char6281     pub fn g_str_tokenize_and_fold(
6282         string: *const c_char,
6283         translit_locale: *const c_char,
6284         ascii_alternates: *mut *mut *mut c_char,
6285     ) -> *mut *mut c_char;
g_strcanon( string: *mut c_char, valid_chars: *const c_char, substitutor: c_char, ) -> *mut c_char6286     pub fn g_strcanon(
6287         string: *mut c_char,
6288         valid_chars: *const c_char,
6289         substitutor: c_char,
6290     ) -> *mut c_char;
g_strcasecmp(s1: *const c_char, s2: *const c_char) -> c_int6291     pub fn g_strcasecmp(s1: *const c_char, s2: *const c_char) -> c_int;
g_strchomp(string: *mut c_char) -> *mut c_char6292     pub fn g_strchomp(string: *mut c_char) -> *mut c_char;
g_strchug(string: *mut c_char) -> *mut c_char6293     pub fn g_strchug(string: *mut c_char) -> *mut c_char;
g_strcmp0(str1: *const c_char, str2: *const c_char) -> c_int6294     pub fn g_strcmp0(str1: *const c_char, str2: *const c_char) -> c_int;
g_strcompress(source: *const c_char) -> *mut c_char6295     pub fn g_strcompress(source: *const c_char) -> *mut c_char;
g_strconcat(string1: *const c_char, ...) -> *mut c_char6296     pub fn g_strconcat(string1: *const c_char, ...) -> *mut c_char;
g_strdelimit( string: *mut c_char, delimiters: *const c_char, new_delimiter: c_char, ) -> *mut c_char6297     pub fn g_strdelimit(
6298         string: *mut c_char,
6299         delimiters: *const c_char,
6300         new_delimiter: c_char,
6301     ) -> *mut c_char;
g_strdown(string: *mut c_char) -> *mut c_char6302     pub fn g_strdown(string: *mut c_char) -> *mut c_char;
g_strdup(str: *const c_char) -> *mut c_char6303     pub fn g_strdup(str: *const c_char) -> *mut c_char;
g_strdup_printf(format: *const c_char, ...) -> *mut c_char6304     pub fn g_strdup_printf(format: *const c_char, ...) -> *mut c_char;
6305     //pub fn g_strdup_vprintf(format: *const c_char, args: /*Unimplemented*/va_list) -> *mut c_char;
g_strdupv(str_array: *mut *mut c_char) -> *mut *mut c_char6306     pub fn g_strdupv(str_array: *mut *mut c_char) -> *mut *mut c_char;
g_strerror(errnum: c_int) -> *const c_char6307     pub fn g_strerror(errnum: c_int) -> *const c_char;
g_strescape(source: *const c_char, exceptions: *const c_char) -> *mut c_char6308     pub fn g_strescape(source: *const c_char, exceptions: *const c_char) -> *mut c_char;
g_strfreev(str_array: *mut *mut c_char)6309     pub fn g_strfreev(str_array: *mut *mut c_char);
g_string_new(init: *const c_char) -> *mut GString6310     pub fn g_string_new(init: *const c_char) -> *mut GString;
g_string_new_len(init: *const c_char, len: ssize_t) -> *mut GString6311     pub fn g_string_new_len(init: *const c_char, len: ssize_t) -> *mut GString;
g_string_sized_new(dfl_size: size_t) -> *mut GString6312     pub fn g_string_sized_new(dfl_size: size_t) -> *mut GString;
g_strip_context(msgid: *const c_char, msgval: *const c_char) -> *const c_char6313     pub fn g_strip_context(msgid: *const c_char, msgval: *const c_char) -> *const c_char;
g_strjoin(separator: *const c_char, ...) -> *mut c_char6314     pub fn g_strjoin(separator: *const c_char, ...) -> *mut c_char;
g_strjoinv(separator: *const c_char, str_array: *mut *mut c_char) -> *mut c_char6315     pub fn g_strjoinv(separator: *const c_char, str_array: *mut *mut c_char) -> *mut c_char;
g_strlcat(dest: *mut c_char, src: *const c_char, dest_size: size_t) -> size_t6316     pub fn g_strlcat(dest: *mut c_char, src: *const c_char, dest_size: size_t) -> size_t;
g_strlcpy(dest: *mut c_char, src: *const c_char, dest_size: size_t) -> size_t6317     pub fn g_strlcpy(dest: *mut c_char, src: *const c_char, dest_size: size_t) -> size_t;
g_strncasecmp(s1: *const c_char, s2: *const c_char, n: c_uint) -> c_int6318     pub fn g_strncasecmp(s1: *const c_char, s2: *const c_char, n: c_uint) -> c_int;
g_strndup(str: *const c_char, n: size_t) -> *mut c_char6319     pub fn g_strndup(str: *const c_char, n: size_t) -> *mut c_char;
g_strnfill(length: size_t, fill_char: c_char) -> *mut c_char6320     pub fn g_strnfill(length: size_t, fill_char: c_char) -> *mut c_char;
g_strreverse(string: *mut c_char) -> *mut c_char6321     pub fn g_strreverse(string: *mut c_char) -> *mut c_char;
g_strrstr(haystack: *const c_char, needle: *const c_char) -> *mut c_char6322     pub fn g_strrstr(haystack: *const c_char, needle: *const c_char) -> *mut c_char;
g_strrstr_len( haystack: *const c_char, haystack_len: ssize_t, needle: *const c_char, ) -> *mut c_char6323     pub fn g_strrstr_len(
6324         haystack: *const c_char,
6325         haystack_len: ssize_t,
6326         needle: *const c_char,
6327     ) -> *mut c_char;
g_strsignal(signum: c_int) -> *const c_char6328     pub fn g_strsignal(signum: c_int) -> *const c_char;
g_strsplit( string: *const c_char, delimiter: *const c_char, max_tokens: c_int, ) -> *mut *mut c_char6329     pub fn g_strsplit(
6330         string: *const c_char,
6331         delimiter: *const c_char,
6332         max_tokens: c_int,
6333     ) -> *mut *mut c_char;
g_strsplit_set( string: *const c_char, delimiters: *const c_char, max_tokens: c_int, ) -> *mut *mut c_char6334     pub fn g_strsplit_set(
6335         string: *const c_char,
6336         delimiters: *const c_char,
6337         max_tokens: c_int,
6338     ) -> *mut *mut c_char;
g_strstr_len( haystack: *const c_char, haystack_len: ssize_t, needle: *const c_char, ) -> *mut c_char6339     pub fn g_strstr_len(
6340         haystack: *const c_char,
6341         haystack_len: ssize_t,
6342         needle: *const c_char,
6343     ) -> *mut c_char;
g_strtod(nptr: *const c_char, endptr: *mut *mut c_char) -> c_double6344     pub fn g_strtod(nptr: *const c_char, endptr: *mut *mut c_char) -> c_double;
g_strup(string: *mut c_char) -> *mut c_char6345     pub fn g_strup(string: *mut c_char) -> *mut c_char;
g_strv_contains(strv: *const *const c_char, str: *const c_char) -> gboolean6346     pub fn g_strv_contains(strv: *const *const c_char, str: *const c_char) -> gboolean;
6347     #[cfg(any(feature = "v2_60", feature = "dox"))]
6348     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_60")))]
g_strv_equal(strv1: *const *const c_char, strv2: *const *const c_char) -> gboolean6349     pub fn g_strv_equal(strv1: *const *const c_char, strv2: *const *const c_char) -> gboolean;
g_strv_get_type() -> GType6350     pub fn g_strv_get_type() -> GType;
g_strv_length(str_array: *mut *mut c_char) -> c_uint6351     pub fn g_strv_length(str_array: *mut *mut c_char) -> c_uint;
g_test_add_data_func( testpath: *const c_char, test_data: gconstpointer, test_func: GTestDataFunc, )6352     pub fn g_test_add_data_func(
6353         testpath: *const c_char,
6354         test_data: gconstpointer,
6355         test_func: GTestDataFunc,
6356     );
g_test_add_data_func_full( testpath: *const c_char, test_data: gpointer, test_func: GTestDataFunc, data_free_func: GDestroyNotify, )6357     pub fn g_test_add_data_func_full(
6358         testpath: *const c_char,
6359         test_data: gpointer,
6360         test_func: GTestDataFunc,
6361         data_free_func: GDestroyNotify,
6362     );
g_test_add_func(testpath: *const c_char, test_func: GTestFunc)6363     pub fn g_test_add_func(testpath: *const c_char, test_func: GTestFunc);
g_test_add_vtable( testpath: *const c_char, data_size: size_t, test_data: gconstpointer, data_setup: GTestFixtureFunc, data_test: GTestFixtureFunc, data_teardown: GTestFixtureFunc, )6364     pub fn g_test_add_vtable(
6365         testpath: *const c_char,
6366         data_size: size_t,
6367         test_data: gconstpointer,
6368         data_setup: GTestFixtureFunc,
6369         data_test: GTestFixtureFunc,
6370         data_teardown: GTestFixtureFunc,
6371     );
g_test_assert_expected_messages_internal( domain: *const c_char, file: *const c_char, line: c_int, func: *const c_char, )6372     pub fn g_test_assert_expected_messages_internal(
6373         domain: *const c_char,
6374         file: *const c_char,
6375         line: c_int,
6376         func: *const c_char,
6377     );
g_test_bug(bug_uri_snippet: *const c_char)6378     pub fn g_test_bug(bug_uri_snippet: *const c_char);
g_test_bug_base(uri_pattern: *const c_char)6379     pub fn g_test_bug_base(uri_pattern: *const c_char);
g_test_build_filename( file_type: GTestFileType, first_path: *const c_char, ... ) -> *mut c_char6380     pub fn g_test_build_filename(
6381         file_type: GTestFileType,
6382         first_path: *const c_char,
6383         ...
6384     ) -> *mut c_char;
g_test_create_case( test_name: *const c_char, data_size: size_t, test_data: gconstpointer, data_setup: GTestFixtureFunc, data_test: GTestFixtureFunc, data_teardown: GTestFixtureFunc, ) -> *mut GTestCase6385     pub fn g_test_create_case(
6386         test_name: *const c_char,
6387         data_size: size_t,
6388         test_data: gconstpointer,
6389         data_setup: GTestFixtureFunc,
6390         data_test: GTestFixtureFunc,
6391         data_teardown: GTestFixtureFunc,
6392     ) -> *mut GTestCase;
g_test_create_suite(suite_name: *const c_char) -> *mut GTestSuite6393     pub fn g_test_create_suite(suite_name: *const c_char) -> *mut GTestSuite;
g_test_expect_message( log_domain: *const c_char, log_level: GLogLevelFlags, pattern: *const c_char, )6394     pub fn g_test_expect_message(
6395         log_domain: *const c_char,
6396         log_level: GLogLevelFlags,
6397         pattern: *const c_char,
6398     );
g_test_fail()6399     pub fn g_test_fail();
g_test_failed() -> gboolean6400     pub fn g_test_failed() -> gboolean;
g_test_get_dir(file_type: GTestFileType) -> *const c_char6401     pub fn g_test_get_dir(file_type: GTestFileType) -> *const c_char;
g_test_get_filename( file_type: GTestFileType, first_path: *const c_char, ... ) -> *const c_char6402     pub fn g_test_get_filename(
6403         file_type: GTestFileType,
6404         first_path: *const c_char,
6405         ...
6406     ) -> *const c_char;
g_test_get_root() -> *mut GTestSuite6407     pub fn g_test_get_root() -> *mut GTestSuite;
g_test_incomplete(msg: *const c_char)6408     pub fn g_test_incomplete(msg: *const c_char);
g_test_init(argc: *mut c_int, argv: *mut *mut *mut c_char, ...)6409     pub fn g_test_init(argc: *mut c_int, argv: *mut *mut *mut c_char, ...);
g_test_log_set_fatal_handler(log_func: GTestLogFatalFunc, user_data: gpointer)6410     pub fn g_test_log_set_fatal_handler(log_func: GTestLogFatalFunc, user_data: gpointer);
g_test_log_type_name(log_type: GTestLogType) -> *const c_char6411     pub fn g_test_log_type_name(log_type: GTestLogType) -> *const c_char;
g_test_maximized_result(maximized_quantity: c_double, format: *const c_char, ...)6412     pub fn g_test_maximized_result(maximized_quantity: c_double, format: *const c_char, ...);
g_test_message(format: *const c_char, ...)6413     pub fn g_test_message(format: *const c_char, ...);
g_test_minimized_result(minimized_quantity: c_double, format: *const c_char, ...)6414     pub fn g_test_minimized_result(minimized_quantity: c_double, format: *const c_char, ...);
g_test_queue_destroy(destroy_func: GDestroyNotify, destroy_data: gpointer)6415     pub fn g_test_queue_destroy(destroy_func: GDestroyNotify, destroy_data: gpointer);
g_test_queue_free(gfree_pointer: gpointer)6416     pub fn g_test_queue_free(gfree_pointer: gpointer);
g_test_rand_double() -> c_double6417     pub fn g_test_rand_double() -> c_double;
g_test_rand_double_range(range_start: c_double, range_end: c_double) -> c_double6418     pub fn g_test_rand_double_range(range_start: c_double, range_end: c_double) -> c_double;
g_test_rand_int() -> i326419     pub fn g_test_rand_int() -> i32;
g_test_rand_int_range(begin: i32, end: i32) -> i326420     pub fn g_test_rand_int_range(begin: i32, end: i32) -> i32;
g_test_run() -> c_int6421     pub fn g_test_run() -> c_int;
g_test_run_suite(suite: *mut GTestSuite) -> c_int6422     pub fn g_test_run_suite(suite: *mut GTestSuite) -> c_int;
g_test_set_nonfatal_assertions()6423     pub fn g_test_set_nonfatal_assertions();
g_test_skip(msg: *const c_char)6424     pub fn g_test_skip(msg: *const c_char);
g_test_subprocess() -> gboolean6425     pub fn g_test_subprocess() -> gboolean;
6426     #[cfg(any(feature = "v2_62", feature = "dox"))]
6427     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_62")))]
g_test_summary(summary: *const c_char)6428     pub fn g_test_summary(summary: *const c_char);
g_test_timer_elapsed() -> c_double6429     pub fn g_test_timer_elapsed() -> c_double;
g_test_timer_last() -> c_double6430     pub fn g_test_timer_last() -> c_double;
g_test_timer_start()6431     pub fn g_test_timer_start();
g_test_trap_assertions( domain: *const c_char, file: *const c_char, line: c_int, func: *const c_char, assertion_flags: u64, pattern: *const c_char, )6432     pub fn g_test_trap_assertions(
6433         domain: *const c_char,
6434         file: *const c_char,
6435         line: c_int,
6436         func: *const c_char,
6437         assertion_flags: u64,
6438         pattern: *const c_char,
6439     );
g_test_trap_fork(usec_timeout: u64, test_trap_flags: GTestTrapFlags) -> gboolean6440     pub fn g_test_trap_fork(usec_timeout: u64, test_trap_flags: GTestTrapFlags) -> gboolean;
g_test_trap_has_passed() -> gboolean6441     pub fn g_test_trap_has_passed() -> gboolean;
g_test_trap_reached_timeout() -> gboolean6442     pub fn g_test_trap_reached_timeout() -> gboolean;
g_test_trap_subprocess( test_path: *const c_char, usec_timeout: u64, test_flags: GTestSubprocessFlags, )6443     pub fn g_test_trap_subprocess(
6444         test_path: *const c_char,
6445         usec_timeout: u64,
6446         test_flags: GTestSubprocessFlags,
6447     );
g_timeout_add(interval: c_uint, function: GSourceFunc, data: gpointer) -> c_uint6448     pub fn g_timeout_add(interval: c_uint, function: GSourceFunc, data: gpointer) -> c_uint;
g_timeout_add_full( priority: c_int, interval: c_uint, function: GSourceFunc, data: gpointer, notify: GDestroyNotify, ) -> c_uint6449     pub fn g_timeout_add_full(
6450         priority: c_int,
6451         interval: c_uint,
6452         function: GSourceFunc,
6453         data: gpointer,
6454         notify: GDestroyNotify,
6455     ) -> c_uint;
g_timeout_add_seconds(interval: c_uint, function: GSourceFunc, data: gpointer) -> c_uint6456     pub fn g_timeout_add_seconds(interval: c_uint, function: GSourceFunc, data: gpointer)
6457         -> c_uint;
g_timeout_add_seconds_full( priority: c_int, interval: c_uint, function: GSourceFunc, data: gpointer, notify: GDestroyNotify, ) -> c_uint6458     pub fn g_timeout_add_seconds_full(
6459         priority: c_int,
6460         interval: c_uint,
6461         function: GSourceFunc,
6462         data: gpointer,
6463         notify: GDestroyNotify,
6464     ) -> c_uint;
g_timeout_source_new(interval: c_uint) -> *mut GSource6465     pub fn g_timeout_source_new(interval: c_uint) -> *mut GSource;
g_timeout_source_new_seconds(interval: c_uint) -> *mut GSource6466     pub fn g_timeout_source_new_seconds(interval: c_uint) -> *mut GSource;
g_try_malloc(n_bytes: size_t) -> gpointer6467     pub fn g_try_malloc(n_bytes: size_t) -> gpointer;
g_try_malloc0(n_bytes: size_t) -> gpointer6468     pub fn g_try_malloc0(n_bytes: size_t) -> gpointer;
g_try_malloc0_n(n_blocks: size_t, n_block_bytes: size_t) -> gpointer6469     pub fn g_try_malloc0_n(n_blocks: size_t, n_block_bytes: size_t) -> gpointer;
g_try_malloc_n(n_blocks: size_t, n_block_bytes: size_t) -> gpointer6470     pub fn g_try_malloc_n(n_blocks: size_t, n_block_bytes: size_t) -> gpointer;
g_try_realloc(mem: gpointer, n_bytes: size_t) -> gpointer6471     pub fn g_try_realloc(mem: gpointer, n_bytes: size_t) -> gpointer;
g_try_realloc_n(mem: gpointer, n_blocks: size_t, n_block_bytes: size_t) -> gpointer6472     pub fn g_try_realloc_n(mem: gpointer, n_blocks: size_t, n_block_bytes: size_t) -> gpointer;
g_ucs4_to_utf16( str: *const u32, len: c_long, items_read: *mut c_long, items_written: *mut c_long, error: *mut *mut GError, ) -> *mut u166473     pub fn g_ucs4_to_utf16(
6474         str: *const u32,
6475         len: c_long,
6476         items_read: *mut c_long,
6477         items_written: *mut c_long,
6478         error: *mut *mut GError,
6479     ) -> *mut u16;
g_ucs4_to_utf8( str: *const u32, len: c_long, items_read: *mut c_long, items_written: *mut c_long, error: *mut *mut GError, ) -> *mut c_char6480     pub fn g_ucs4_to_utf8(
6481         str: *const u32,
6482         len: c_long,
6483         items_read: *mut c_long,
6484         items_written: *mut c_long,
6485         error: *mut *mut GError,
6486     ) -> *mut c_char;
g_unichar_break_type(c: u32) -> GUnicodeBreakType6487     pub fn g_unichar_break_type(c: u32) -> GUnicodeBreakType;
g_unichar_combining_class(uc: u32) -> c_int6488     pub fn g_unichar_combining_class(uc: u32) -> c_int;
g_unichar_compose(a: u32, b: u32, ch: *mut u32) -> gboolean6489     pub fn g_unichar_compose(a: u32, b: u32, ch: *mut u32) -> gboolean;
g_unichar_decompose(ch: u32, a: *mut u32, b: *mut u32) -> gboolean6490     pub fn g_unichar_decompose(ch: u32, a: *mut u32, b: *mut u32) -> gboolean;
g_unichar_digit_value(c: u32) -> c_int6491     pub fn g_unichar_digit_value(c: u32) -> c_int;
g_unichar_fully_decompose( ch: u32, compat: gboolean, result: *mut u32, result_len: size_t, ) -> size_t6492     pub fn g_unichar_fully_decompose(
6493         ch: u32,
6494         compat: gboolean,
6495         result: *mut u32,
6496         result_len: size_t,
6497     ) -> size_t;
g_unichar_get_mirror_char(ch: u32, mirrored_ch: *mut u32) -> gboolean6498     pub fn g_unichar_get_mirror_char(ch: u32, mirrored_ch: *mut u32) -> gboolean;
g_unichar_get_script(ch: u32) -> GUnicodeScript6499     pub fn g_unichar_get_script(ch: u32) -> GUnicodeScript;
g_unichar_isalnum(c: u32) -> gboolean6500     pub fn g_unichar_isalnum(c: u32) -> gboolean;
g_unichar_isalpha(c: u32) -> gboolean6501     pub fn g_unichar_isalpha(c: u32) -> gboolean;
g_unichar_iscntrl(c: u32) -> gboolean6502     pub fn g_unichar_iscntrl(c: u32) -> gboolean;
g_unichar_isdefined(c: u32) -> gboolean6503     pub fn g_unichar_isdefined(c: u32) -> gboolean;
g_unichar_isdigit(c: u32) -> gboolean6504     pub fn g_unichar_isdigit(c: u32) -> gboolean;
g_unichar_isgraph(c: u32) -> gboolean6505     pub fn g_unichar_isgraph(c: u32) -> gboolean;
g_unichar_islower(c: u32) -> gboolean6506     pub fn g_unichar_islower(c: u32) -> gboolean;
g_unichar_ismark(c: u32) -> gboolean6507     pub fn g_unichar_ismark(c: u32) -> gboolean;
g_unichar_isprint(c: u32) -> gboolean6508     pub fn g_unichar_isprint(c: u32) -> gboolean;
g_unichar_ispunct(c: u32) -> gboolean6509     pub fn g_unichar_ispunct(c: u32) -> gboolean;
g_unichar_isspace(c: u32) -> gboolean6510     pub fn g_unichar_isspace(c: u32) -> gboolean;
g_unichar_istitle(c: u32) -> gboolean6511     pub fn g_unichar_istitle(c: u32) -> gboolean;
g_unichar_isupper(c: u32) -> gboolean6512     pub fn g_unichar_isupper(c: u32) -> gboolean;
g_unichar_iswide(c: u32) -> gboolean6513     pub fn g_unichar_iswide(c: u32) -> gboolean;
g_unichar_iswide_cjk(c: u32) -> gboolean6514     pub fn g_unichar_iswide_cjk(c: u32) -> gboolean;
g_unichar_isxdigit(c: u32) -> gboolean6515     pub fn g_unichar_isxdigit(c: u32) -> gboolean;
g_unichar_iszerowidth(c: u32) -> gboolean6516     pub fn g_unichar_iszerowidth(c: u32) -> gboolean;
g_unichar_to_utf8(c: u32, outbuf: *mut c_char) -> c_int6517     pub fn g_unichar_to_utf8(c: u32, outbuf: *mut c_char) -> c_int;
g_unichar_tolower(c: u32) -> u326518     pub fn g_unichar_tolower(c: u32) -> u32;
g_unichar_totitle(c: u32) -> u326519     pub fn g_unichar_totitle(c: u32) -> u32;
g_unichar_toupper(c: u32) -> u326520     pub fn g_unichar_toupper(c: u32) -> u32;
g_unichar_type(c: u32) -> GUnicodeType6521     pub fn g_unichar_type(c: u32) -> GUnicodeType;
g_unichar_validate(ch: u32) -> gboolean6522     pub fn g_unichar_validate(ch: u32) -> gboolean;
g_unichar_xdigit_value(c: u32) -> c_int6523     pub fn g_unichar_xdigit_value(c: u32) -> c_int;
g_unicode_canonical_decomposition(ch: u32, result_len: *mut size_t) -> *mut u326524     pub fn g_unicode_canonical_decomposition(ch: u32, result_len: *mut size_t) -> *mut u32;
g_unicode_canonical_ordering(string: *mut u32, len: size_t)6525     pub fn g_unicode_canonical_ordering(string: *mut u32, len: size_t);
g_unicode_script_from_iso15924(iso15924: u32) -> GUnicodeScript6526     pub fn g_unicode_script_from_iso15924(iso15924: u32) -> GUnicodeScript;
g_unicode_script_to_iso15924(script: GUnicodeScript) -> u326527     pub fn g_unicode_script_to_iso15924(script: GUnicodeScript) -> u32;
g_unix_error_quark() -> GQuark6528     pub fn g_unix_error_quark() -> GQuark;
g_unix_fd_add( fd: c_int, condition: GIOCondition, function: GUnixFDSourceFunc, user_data: gpointer, ) -> c_uint6529     pub fn g_unix_fd_add(
6530         fd: c_int,
6531         condition: GIOCondition,
6532         function: GUnixFDSourceFunc,
6533         user_data: gpointer,
6534     ) -> c_uint;
g_unix_fd_add_full( priority: c_int, fd: c_int, condition: GIOCondition, function: GUnixFDSourceFunc, user_data: gpointer, notify: GDestroyNotify, ) -> c_uint6535     pub fn g_unix_fd_add_full(
6536         priority: c_int,
6537         fd: c_int,
6538         condition: GIOCondition,
6539         function: GUnixFDSourceFunc,
6540         user_data: gpointer,
6541         notify: GDestroyNotify,
6542     ) -> c_uint;
g_unix_fd_source_new(fd: c_int, condition: GIOCondition) -> *mut GSource6543     pub fn g_unix_fd_source_new(fd: c_int, condition: GIOCondition) -> *mut GSource;
6544     #[cfg(any(feature = "v2_64", feature = "dox"))]
6545     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_64")))]
6546     #[cfg(any(unix, feature = "dox"))]
6547     #[cfg_attr(feature = "dox", doc(cfg(unix)))]
g_unix_get_passwd_entry( user_name: *const c_char, error: *mut *mut GError, ) -> *mut passwd6548     pub fn g_unix_get_passwd_entry(
6549         user_name: *const c_char,
6550         error: *mut *mut GError,
6551     ) -> *mut passwd;
g_unix_open_pipe(fds: *mut c_int, flags: c_int, error: *mut *mut GError) -> gboolean6552     pub fn g_unix_open_pipe(fds: *mut c_int, flags: c_int, error: *mut *mut GError) -> gboolean;
g_unix_set_fd_nonblocking( fd: c_int, nonblock: gboolean, error: *mut *mut GError, ) -> gboolean6553     pub fn g_unix_set_fd_nonblocking(
6554         fd: c_int,
6555         nonblock: gboolean,
6556         error: *mut *mut GError,
6557     ) -> gboolean;
g_unix_signal_add(signum: c_int, handler: GSourceFunc, user_data: gpointer) -> c_uint6558     pub fn g_unix_signal_add(signum: c_int, handler: GSourceFunc, user_data: gpointer) -> c_uint;
g_unix_signal_add_full( priority: c_int, signum: c_int, handler: GSourceFunc, user_data: gpointer, notify: GDestroyNotify, ) -> c_uint6559     pub fn g_unix_signal_add_full(
6560         priority: c_int,
6561         signum: c_int,
6562         handler: GSourceFunc,
6563         user_data: gpointer,
6564         notify: GDestroyNotify,
6565     ) -> c_uint;
g_unix_signal_source_new(signum: c_int) -> *mut GSource6566     pub fn g_unix_signal_source_new(signum: c_int) -> *mut GSource;
g_unlink(filename: *const c_char) -> c_int6567     pub fn g_unlink(filename: *const c_char) -> c_int;
6568     #[cfg(any(windows, feature = "dox"))]
6569     #[cfg_attr(feature = "dox", doc(cfg(windows)))]
g_unsetenv_utf8(variable: *const c_char)6570     pub fn g_unsetenv_utf8(variable: *const c_char);
g_unsetenv(variable: *const c_char)6571     pub fn g_unsetenv(variable: *const c_char);
g_usleep(microseconds: c_ulong)6572     pub fn g_usleep(microseconds: c_ulong);
g_utf16_to_ucs4( str: *const u16, len: c_long, items_read: *mut c_long, items_written: *mut c_long, error: *mut *mut GError, ) -> *mut u326573     pub fn g_utf16_to_ucs4(
6574         str: *const u16,
6575         len: c_long,
6576         items_read: *mut c_long,
6577         items_written: *mut c_long,
6578         error: *mut *mut GError,
6579     ) -> *mut u32;
g_utf16_to_utf8( str: *const u16, len: c_long, items_read: *mut c_long, items_written: *mut c_long, error: *mut *mut GError, ) -> *mut c_char6580     pub fn g_utf16_to_utf8(
6581         str: *const u16,
6582         len: c_long,
6583         items_read: *mut c_long,
6584         items_written: *mut c_long,
6585         error: *mut *mut GError,
6586     ) -> *mut c_char;
g_utf8_casefold(str: *const c_char, len: ssize_t) -> *mut c_char6587     pub fn g_utf8_casefold(str: *const c_char, len: ssize_t) -> *mut c_char;
g_utf8_collate(str1: *const c_char, str2: *const c_char) -> c_int6588     pub fn g_utf8_collate(str1: *const c_char, str2: *const c_char) -> c_int;
g_utf8_collate_key(str: *const c_char, len: ssize_t) -> *mut c_char6589     pub fn g_utf8_collate_key(str: *const c_char, len: ssize_t) -> *mut c_char;
g_utf8_collate_key_for_filename(str: *const c_char, len: ssize_t) -> *mut c_char6590     pub fn g_utf8_collate_key_for_filename(str: *const c_char, len: ssize_t) -> *mut c_char;
g_utf8_find_next_char(p: *const c_char, end: *const c_char) -> *mut c_char6591     pub fn g_utf8_find_next_char(p: *const c_char, end: *const c_char) -> *mut c_char;
g_utf8_find_prev_char(str: *const c_char, p: *const c_char) -> *mut c_char6592     pub fn g_utf8_find_prev_char(str: *const c_char, p: *const c_char) -> *mut c_char;
g_utf8_get_char(p: *const c_char) -> u326593     pub fn g_utf8_get_char(p: *const c_char) -> u32;
g_utf8_get_char_validated(p: *const c_char, max_len: ssize_t) -> u326594     pub fn g_utf8_get_char_validated(p: *const c_char, max_len: ssize_t) -> u32;
6595     #[cfg(any(feature = "v2_52", feature = "dox"))]
6596     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
g_utf8_make_valid(str: *const c_char, len: ssize_t) -> *mut c_char6597     pub fn g_utf8_make_valid(str: *const c_char, len: ssize_t) -> *mut c_char;
g_utf8_normalize(str: *const c_char, len: ssize_t, mode: GNormalizeMode) -> *mut c_char6598     pub fn g_utf8_normalize(str: *const c_char, len: ssize_t, mode: GNormalizeMode) -> *mut c_char;
g_utf8_offset_to_pointer(str: *const c_char, offset: c_long) -> *mut c_char6599     pub fn g_utf8_offset_to_pointer(str: *const c_char, offset: c_long) -> *mut c_char;
g_utf8_pointer_to_offset(str: *const c_char, pos: *const c_char) -> c_long6600     pub fn g_utf8_pointer_to_offset(str: *const c_char, pos: *const c_char) -> c_long;
g_utf8_prev_char(p: *const c_char) -> *mut c_char6601     pub fn g_utf8_prev_char(p: *const c_char) -> *mut c_char;
g_utf8_strchr(p: *const c_char, len: ssize_t, c: u32) -> *mut c_char6602     pub fn g_utf8_strchr(p: *const c_char, len: ssize_t, c: u32) -> *mut c_char;
g_utf8_strdown(str: *const c_char, len: ssize_t) -> *mut c_char6603     pub fn g_utf8_strdown(str: *const c_char, len: ssize_t) -> *mut c_char;
g_utf8_strlen(p: *const c_char, max: ssize_t) -> c_long6604     pub fn g_utf8_strlen(p: *const c_char, max: ssize_t) -> c_long;
g_utf8_strncpy(dest: *mut c_char, src: *const c_char, n: size_t) -> *mut c_char6605     pub fn g_utf8_strncpy(dest: *mut c_char, src: *const c_char, n: size_t) -> *mut c_char;
g_utf8_strrchr(p: *const c_char, len: ssize_t, c: u32) -> *mut c_char6606     pub fn g_utf8_strrchr(p: *const c_char, len: ssize_t, c: u32) -> *mut c_char;
g_utf8_strreverse(str: *const c_char, len: ssize_t) -> *mut c_char6607     pub fn g_utf8_strreverse(str: *const c_char, len: ssize_t) -> *mut c_char;
g_utf8_strup(str: *const c_char, len: ssize_t) -> *mut c_char6608     pub fn g_utf8_strup(str: *const c_char, len: ssize_t) -> *mut c_char;
g_utf8_substring(str: *const c_char, start_pos: c_long, end_pos: c_long) -> *mut c_char6609     pub fn g_utf8_substring(str: *const c_char, start_pos: c_long, end_pos: c_long) -> *mut c_char;
g_utf8_to_ucs4( str: *const c_char, len: c_long, items_read: *mut c_long, items_written: *mut c_long, error: *mut *mut GError, ) -> *mut u326610     pub fn g_utf8_to_ucs4(
6611         str: *const c_char,
6612         len: c_long,
6613         items_read: *mut c_long,
6614         items_written: *mut c_long,
6615         error: *mut *mut GError,
6616     ) -> *mut u32;
g_utf8_to_ucs4_fast( str: *const c_char, len: c_long, items_written: *mut c_long, ) -> *mut u326617     pub fn g_utf8_to_ucs4_fast(
6618         str: *const c_char,
6619         len: c_long,
6620         items_written: *mut c_long,
6621     ) -> *mut u32;
g_utf8_to_utf16( str: *const c_char, len: c_long, items_read: *mut c_long, items_written: *mut c_long, error: *mut *mut GError, ) -> *mut u166622     pub fn g_utf8_to_utf16(
6623         str: *const c_char,
6624         len: c_long,
6625         items_read: *mut c_long,
6626         items_written: *mut c_long,
6627         error: *mut *mut GError,
6628     ) -> *mut u16;
g_utf8_validate(str: *const u8, max_len: ssize_t, end: *mut *const c_char) -> gboolean6629     pub fn g_utf8_validate(str: *const u8, max_len: ssize_t, end: *mut *const c_char) -> gboolean;
6630     #[cfg(any(feature = "v2_60", feature = "dox"))]
6631     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_60")))]
g_utf8_validate_len( str: *const u8, max_len: size_t, end: *mut *const c_char, ) -> gboolean6632     pub fn g_utf8_validate_len(
6633         str: *const u8,
6634         max_len: size_t,
6635         end: *mut *const c_char,
6636     ) -> gboolean;
6637     #[cfg(any(feature = "v2_52", feature = "dox"))]
6638     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
g_uuid_string_is_valid(str: *const c_char) -> gboolean6639     pub fn g_uuid_string_is_valid(str: *const c_char) -> gboolean;
6640     #[cfg(any(feature = "v2_52", feature = "dox"))]
6641     #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_52")))]
g_uuid_string_random() -> *mut c_char6642     pub fn g_uuid_string_random() -> *mut c_char;
g_variant_get_gtype() -> GType6643     pub fn g_variant_get_gtype() -> GType;
6644     //pub fn g_vasprintf(string: *mut *mut c_char, format: *const c_char, args: /*Unimplemented*/va_list) -> c_int;
6645     //pub fn g_vfprintf(file: *mut FILE, format: *const c_char, args: /*Unimplemented*/va_list) -> c_int;
6646     //pub fn g_vprintf(format: *const c_char, args: /*Unimplemented*/va_list) -> c_int;
6647     //pub fn g_vsnprintf(string: *mut c_char, n: c_ulong, format: *const c_char, args: /*Unimplemented*/va_list) -> c_int;
6648     //pub fn g_vsprintf(string: *mut c_char, format: *const c_char, args: /*Unimplemented*/va_list) -> c_int;
g_warn_message( domain: *const c_char, file: *const c_char, line: c_int, func: *const c_char, warnexpr: *const c_char, )6649     pub fn g_warn_message(
6650         domain: *const c_char,
6651         file: *const c_char,
6652         line: c_int,
6653         func: *const c_char,
6654         warnexpr: *const c_char,
6655     );
6656 
6657 }
6658