UNPKG

@react-gnome/gjs-esm-types

Version:

TypeScript module declarations for GJS ESM modules.

2,552 lines (2,514 loc) 1.05 MB
/* * Type Definitions for Gjs (https://gjs.guide/) * * These type definitions are automatically generated, do not edit them by hand. * If you found a bug fix it in ts-for-gir itself or create a bug report on https://github.com/gjsify/ts-for-gjs */ import type GObject from "gi://GObject?version=2.0"; declare module "gi://GLib?version=2.0" { /** * Error codes returned by bookmark file parsing. */ enum BookmarkFileError { /** * URI was ill-formed */ INVALID_URI, /** * a requested field was not found */ INVALID_VALUE, /** * a requested application did * not register a bookmark */ APP_NOT_REGISTERED, /** * a requested URI was not found */ URI_NOT_FOUND, /** * document was ill formed */ READ, /** * the text being parsed was * in an unknown encoding */ UNKNOWN_ENCODING, /** * an error occurred while writing */ WRITE, /** * requested file was not found */ FILE_NOT_FOUND, } /** * The hashing algorithm to be used by #GChecksum when performing the * digest of some data. * * Note that the #GChecksumType enumeration may be extended at a later * date to include new hashing algorithm types. */ enum ChecksumType { /** * Use the MD5 hashing algorithm */ MD5, /** * Use the SHA-1 hashing algorithm */ SHA1, /** * Use the SHA-256 hashing algorithm */ SHA256, /** * Use the SHA-512 hashing algorithm (Since: 2.36) */ SHA512, /** * Use the SHA-384 hashing algorithm (Since: 2.51) */ SHA384, } /** * Error codes returned by character set conversion routines. */ enum ConvertError { /** * Conversion between the requested character * sets is not supported. */ NO_CONVERSION, /** * Invalid byte sequence in conversion input; * or the character sequence could not be represented in the target * character set. */ ILLEGAL_SEQUENCE, /** * Conversion failed for some reason. */ FAILED, /** * Partial character sequence at end of input. */ PARTIAL_INPUT, /** * URI is invalid. */ BAD_URI, /** * Pathname is not an absolute path. */ NOT_ABSOLUTE_PATH, /** * No memory available. Since: 2.40 */ NO_MEMORY, /** * An embedded NUL character is present in * conversion output where a NUL-terminated string is expected. * Since: 2.56 */ EMBEDDED_NUL, } /** * This enumeration isn't used in the API, but may be useful if you need * to mark a number as a day, month, or year. */ enum DateDMY { /** * a day */ DAY, /** * a month */ MONTH, /** * a year */ YEAR, } /** * Enumeration representing a month; values are %G_DATE_JANUARY, * %G_DATE_FEBRUARY, etc. %G_DATE_BAD_MONTH is the invalid value. */ enum DateMonth { /** * invalid value */ BAD_MONTH, /** * January */ JANUARY, /** * February */ FEBRUARY, /** * March */ MARCH, /** * April */ APRIL, /** * May */ MAY, /** * June */ JUNE, /** * July */ JULY, /** * August */ AUGUST, /** * September */ SEPTEMBER, /** * October */ OCTOBER, /** * November */ NOVEMBER, /** * December */ DECEMBER, } /** * Enumeration representing a day of the week; %G_DATE_MONDAY, * %G_DATE_TUESDAY, etc. %G_DATE_BAD_WEEKDAY is an invalid weekday. */ enum DateWeekday { /** * invalid value */ BAD_WEEKDAY, /** * Monday */ MONDAY, /** * Tuesday */ TUESDAY, /** * Wednesday */ WEDNESDAY, /** * Thursday */ THURSDAY, /** * Friday */ FRIDAY, /** * Saturday */ SATURDAY, /** * Sunday */ SUNDAY, } /** * The possible errors, used in the `v_error` field * of #GTokenValue, when the token is a %G_TOKEN_ERROR. */ enum ErrorType { /** * unknown error */ UNKNOWN, /** * unexpected end of file */ UNEXP_EOF, /** * unterminated string constant */ UNEXP_EOF_IN_STRING, /** * unterminated comment */ UNEXP_EOF_IN_COMMENT, /** * non-digit character in a number */ NON_DIGIT_IN_CONST, /** * digit beyond radix in a number */ DIGIT_RADIX, /** * non-decimal floating point number */ FLOAT_RADIX, /** * malformed floating point number */ FLOAT_MALFORMED, } /** * Values corresponding to `errno` codes returned from file operations * on UNIX. Unlike `errno` codes, GFileError values are available on * all systems, even Windows. The exact meaning of each code depends * on what sort of file operation you were performing; the UNIX * documentation gives more details. The following error code descriptions * come from the GNU C Library manual, and are under the copyright * of that manual. * * It's not very portable to make detailed assumptions about exactly * which errors will be returned from a given operation. Some errors * don't occur on some systems, etc., sometimes there are subtle * differences in when a system will report a given error, etc. */ enum FileError { /** * Operation not permitted; only the owner of * the file (or other resource) or processes with special privileges * can perform the operation. */ EXIST, /** * File is a directory; you cannot open a directory * for writing, or create or remove hard links to it. */ ISDIR, /** * Permission denied; the file permissions do not * allow the attempted operation. */ ACCES, /** * Filename too long. */ NAMETOOLONG, /** * No such file or directory. This is a "file * doesn't exist" error for ordinary files that are referenced in * contexts where they are expected to already exist. */ NOENT, /** * A file that isn't a directory was specified when * a directory is required. */ NOTDIR, /** * No such device or address. The system tried to * use the device represented by a file you specified, and it * couldn't find the device. This can mean that the device file was * installed incorrectly, or that the physical device is missing or * not correctly attached to the computer. */ NXIO, /** * The underlying file system of the specified file * does not support memory mapping. */ NODEV, /** * The directory containing the new link can't be * modified because it's on a read-only file system. */ ROFS, /** * Text file busy. */ TXTBSY, /** * You passed in a pointer to bad memory. * (GLib won't reliably return this, don't pass in pointers to bad * memory.) */ FAULT, /** * Too many levels of symbolic links were encountered * in looking up a file name. This often indicates a cycle of symbolic * links. */ LOOP, /** * No space left on device; write operation on a * file failed because the disk is full. */ NOSPC, /** * No memory available. The system cannot allocate * more virtual memory because its capacity is full. */ NOMEM, /** * The current process has too many files open and * can't open any more. Duplicate descriptors do count toward this * limit. */ MFILE, /** * There are too many distinct file openings in the * entire system. */ NFILE, /** * Bad file descriptor; for example, I/O on a * descriptor that has been closed or reading from a descriptor open * only for writing (or vice versa). */ BADF, /** * Invalid argument. This is used to indicate * various kinds of problems with passing the wrong argument to a * library function. */ INVAL, /** * Broken pipe; there is no process reading from the * other end of a pipe. Every library function that returns this * error code also generates a 'SIGPIPE' signal; this signal * terminates the program if not handled or blocked. Thus, your * program will never actually see this code unless it has handled * or blocked 'SIGPIPE'. */ PIPE, /** * Resource temporarily unavailable; the call might * work if you try again later. */ AGAIN, /** * Interrupted function call; an asynchronous signal * occurred and prevented completion of the call. When this * happens, you should try the call again. */ INTR, /** * Input/output error; usually used for physical read * or write errors. i.e. the disk or other physical device hardware * is returning errors. */ IO, /** * Operation not permitted; only the owner of the * file (or other resource) or processes with special privileges can * perform the operation. */ PERM, /** * Function not implemented; this indicates that * the system is missing some functionality. */ NOSYS, /** * Does not correspond to a UNIX error code; this * is the standard "failed for unspecified reason" error code present * in all #GError error code enumerations. Returned if no specific * code applies. */ FAILED, } /** * Error codes returned by #GIOChannel operations. */ enum IOChannelError { /** * File too large. */ FBIG, /** * Invalid argument. */ INVAL, /** * IO error. */ IO, /** * File is a directory. */ ISDIR, /** * No space left on device. */ NOSPC, /** * No such device or address. */ NXIO, /** * Value too large for defined datatype. */ OVERFLOW, /** * Broken pipe. */ PIPE, /** * Some other error. */ FAILED, } /** * #GIOError is only used by the deprecated functions * g_io_channel_read(), g_io_channel_write(), and g_io_channel_seek(). */ enum IOError { /** * no error */ NONE, /** * an EAGAIN error occurred */ AGAIN, /** * an EINVAL error occurred */ INVAL, /** * another error occurred */ UNKNOWN, } /** * Statuses returned by most of the #GIOFuncs functions. */ enum IOStatus { /** * An error occurred. */ ERROR, /** * Success. */ NORMAL, /** * End of file. */ EOF, /** * Resource temporarily unavailable. */ AGAIN, } /** * Error codes returned by key file parsing. */ enum KeyFileError { /** * the text being parsed was in * an unknown encoding */ UNKNOWN_ENCODING, /** * document was ill-formed */ PARSE, /** * the file was not found */ NOT_FOUND, /** * a requested key was not found */ KEY_NOT_FOUND, /** * a requested group was not found */ GROUP_NOT_FOUND, /** * a value could not be parsed */ INVALID_VALUE, } /** * Return values from #GLogWriterFuncs to indicate whether the given log entry * was successfully handled by the writer, or whether there was an error in * handling it (and hence a fallback writer should be used). * * If a #GLogWriterFunc ignores a log entry, it should return * %G_LOG_WRITER_HANDLED. */ enum LogWriterOutput { /** * Log writer has handled the log entry. */ HANDLED, /** * Log writer could not handle the log entry. */ UNHANDLED, } /** * Error codes returned by markup parsing. */ enum MarkupError { /** * text being parsed was not valid UTF-8 */ BAD_UTF8, /** * document contained nothing, or only whitespace */ EMPTY, /** * document was ill-formed */ PARSE, /** * error should be set by #GMarkupParser * functions; element wasn't known */ UNKNOWN_ELEMENT, /** * error should be set by #GMarkupParser * functions; attribute wasn't known */ UNKNOWN_ATTRIBUTE, /** * error should be set by #GMarkupParser * functions; content was invalid */ INVALID_CONTENT, /** * error should be set by #GMarkupParser * functions; a required attribute was missing */ MISSING_ATTRIBUTE, } /** * Defines how a Unicode string is transformed in a canonical * form, standardizing such issues as whether a character with * an accent is represented as a base character and combining * accent or as a single precomposed character. Unicode strings * should generally be normalized before comparing them. */ enum NormalizeMode { /** * standardize differences that do not affect the * text content, such as the above-mentioned accent representation */ DEFAULT, /** * another name for %G_NORMALIZE_DEFAULT */ NFD, /** * like %G_NORMALIZE_DEFAULT, but with * composed forms rather than a maximally decomposed form */ DEFAULT_COMPOSE, /** * another name for %G_NORMALIZE_DEFAULT_COMPOSE */ NFC, /** * beyond %G_NORMALIZE_DEFAULT also standardize the * "compatibility" characters in Unicode, such as SUPERSCRIPT THREE * to the standard forms (in this case DIGIT THREE). Formatting * information may be lost but for most text operations such * characters should be considered the same */ ALL, /** * another name for %G_NORMALIZE_ALL */ NFKD, /** * like %G_NORMALIZE_ALL, but with composed * forms rather than a maximally decomposed form */ ALL_COMPOSE, /** * another name for %G_NORMALIZE_ALL_COMPOSE */ NFKC, } /** * Error codes returned by functions converting a string to a number. */ enum NumberParserError { /** * String was not a valid number. */ INVALID, /** * String was a number, but out of bounds. */ OUT_OF_BOUNDS, } /** * The possible statuses of a one-time initialization function * controlled by a #GOnce struct. */ enum OnceStatus { /** * the function has not been called yet. */ NOTCALLED, /** * the function call is currently in progress. */ PROGRESS, /** * the function has been called. */ READY, } /** * The #GOptionArg enum values determine which type of extra argument the * options expect to find. If an option expects an extra argument, it can * be specified in several ways; with a short option: `-x arg`, with a long * option: `--name arg` or combined in a single argument: `--name=arg`. */ enum OptionArg { /** * No extra argument. This is useful for simple flags or booleans. */ NONE, /** * The option takes a UTF-8 string argument. */ STRING, /** * The option takes an integer argument. */ INT, /** * The option provides a callback (of type * #GOptionArgFunc) to parse the extra argument. */ CALLBACK, /** * The option takes a filename as argument, which will * be in the GLib filename encoding rather than UTF-8. */ FILENAME, /** * The option takes a string argument, multiple * uses of the option are collected into an array of strings. */ STRING_ARRAY, /** * The option takes a filename as argument, * multiple uses of the option are collected into an array of strings. */ FILENAME_ARRAY, /** * The option takes a double argument. The argument * can be formatted either for the user's locale or for the "C" locale. * Since 2.12 */ DOUBLE, /** * The option takes a 64-bit integer. Like * %G_OPTION_ARG_INT but for larger numbers. The number can be in * decimal base, or in hexadecimal (when prefixed with `0x`, for * example, `0xffffffff`). Since 2.12 */ INT64, } /** * Error codes returned by option parsing. */ enum OptionError { /** * An option was not known to the parser. * This error will only be reported, if the parser hasn't been instructed * to ignore unknown options, see g_option_context_set_ignore_unknown_options(). */ UNKNOWN_OPTION, /** * A value couldn't be parsed. */ BAD_VALUE, /** * A #GOptionArgFunc callback failed. */ FAILED, } /** * Error codes returned by regular expressions functions. */ enum RegexError { /** * Compilation of the regular expression failed. */ COMPILE, /** * Optimization of the regular expression failed. */ OPTIMIZE, /** * Replacement failed due to an ill-formed replacement * string. */ REPLACE, /** * The match process failed. */ MATCH, /** * Internal error of the regular expression engine. * Since 2.16 */ INTERNAL, /** * "\\" at end of pattern. Since 2.16 */ STRAY_BACKSLASH, /** * "\\c" at end of pattern. Since 2.16 */ MISSING_CONTROL_CHAR, /** * Unrecognized character follows "\\". * Since 2.16 */ UNRECOGNIZED_ESCAPE, /** * Numbers out of order in "{}" * quantifier. Since 2.16 */ QUANTIFIERS_OUT_OF_ORDER, /** * Number too big in "{}" quantifier. * Since 2.16 */ QUANTIFIER_TOO_BIG, /** * Missing terminating "]" for * character class. Since 2.16 */ UNTERMINATED_CHARACTER_CLASS, /** * Invalid escape sequence * in character class. Since 2.16 */ INVALID_ESCAPE_IN_CHARACTER_CLASS, /** * Range out of order in character class. * Since 2.16 */ RANGE_OUT_OF_ORDER, /** * Nothing to repeat. Since 2.16 */ NOTHING_TO_REPEAT, /** * Unrecognized character after "(?", * "(?<" or "(?P". Since 2.16 */ UNRECOGNIZED_CHARACTER, /** * POSIX named classes are * supported only within a class. Since 2.16 */ POSIX_NAMED_CLASS_OUTSIDE_CLASS, /** * Missing terminating ")" or ")" * without opening "(". Since 2.16 */ UNMATCHED_PARENTHESIS, /** * Reference to non-existent * subpattern. Since 2.16 */ INEXISTENT_SUBPATTERN_REFERENCE, /** * Missing terminating ")" after comment. * Since 2.16 */ UNTERMINATED_COMMENT, /** * Regular expression too large. * Since 2.16 */ EXPRESSION_TOO_LARGE, /** * Failed to get memory. Since 2.16 */ MEMORY_ERROR, /** * Lookbehind assertion is not * fixed length. Since 2.16 */ VARIABLE_LENGTH_LOOKBEHIND, /** * Malformed number or name after "(?(". * Since 2.16 */ MALFORMED_CONDITION, /** * Conditional group contains * more than two branches. Since 2.16 */ TOO_MANY_CONDITIONAL_BRANCHES, /** * Assertion expected after "(?(". * Since 2.16 */ ASSERTION_EXPECTED, /** * Unknown POSIX class name. * Since 2.16 */ UNKNOWN_POSIX_CLASS_NAME, /** * POSIX collating * elements are not supported. Since 2.16 */ POSIX_COLLATING_ELEMENTS_NOT_SUPPORTED, /** * Character value in "\\x{...}" sequence * is too large. Since 2.16 */ HEX_CODE_TOO_LARGE, /** * Invalid condition "(?(0)". Since 2.16 */ INVALID_CONDITION, /** * \\C not allowed in * lookbehind assertion. Since 2.16 */ SINGLE_BYTE_MATCH_IN_LOOKBEHIND, /** * Recursive call could loop indefinitely. * Since 2.16 */ INFINITE_LOOP, /** * Missing terminator * in subpattern name. Since 2.16 */ MISSING_SUBPATTERN_NAME_TERMINATOR, /** * Two named subpatterns have * the same name. Since 2.16 */ DUPLICATE_SUBPATTERN_NAME, /** * Malformed "\\P" or "\\p" sequence. * Since 2.16 */ MALFORMED_PROPERTY, /** * Unknown property name after "\\P" or * "\\p". Since 2.16 */ UNKNOWN_PROPERTY, /** * Subpattern name is too long * (maximum 32 characters). Since 2.16 */ SUBPATTERN_NAME_TOO_LONG, /** * Too many named subpatterns (maximum * 10,000). Since 2.16 */ TOO_MANY_SUBPATTERNS, /** * Octal value is greater than "\\377". * Since 2.16 */ INVALID_OCTAL_VALUE, /** * "DEFINE" group contains more * than one branch. Since 2.16 */ TOO_MANY_BRANCHES_IN_DEFINE, /** * Repeating a "DEFINE" group is not allowed. * This error is never raised. Since: 2.16 Deprecated: 2.34 */ DEFINE_REPETION, /** * Inconsistent newline options. * Since 2.16 */ INCONSISTENT_NEWLINE_OPTIONS, /** * "\\g" is not followed by a braced, * angle-bracketed, or quoted name or number, or by a plain number. Since: 2.16 */ MISSING_BACK_REFERENCE, /** * relative reference must not be zero. Since: 2.34 */ INVALID_RELATIVE_REFERENCE, /** * the backtracing * control verb used does not allow an argument. Since: 2.34 */ BACKTRACKING_CONTROL_VERB_ARGUMENT_FORBIDDEN, /** * unknown backtracing * control verb. Since: 2.34 */ UNKNOWN_BACKTRACKING_CONTROL_VERB, /** * number is too big in escape sequence. Since: 2.34 */ NUMBER_TOO_BIG, /** * Missing subpattern name. Since: 2.34 */ MISSING_SUBPATTERN_NAME, /** * Missing digit. Since 2.34 */ MISSING_DIGIT, /** * In JavaScript compatibility mode, * "[" is an invalid data character. Since: 2.34 */ INVALID_DATA_CHARACTER, /** * different names for subpatterns of the * same number are not allowed. Since: 2.34 */ EXTRA_SUBPATTERN_NAME, /** * the backtracing control * verb requires an argument. Since: 2.34 */ BACKTRACKING_CONTROL_VERB_ARGUMENT_REQUIRED, /** * "\\c" must be followed by an ASCII * character. Since: 2.34 */ INVALID_CONTROL_CHAR, /** * "\\k" is not followed by a braced, angle-bracketed, or * quoted name. Since: 2.34 */ MISSING_NAME, /** * "\\N" is not supported in a class. Since: 2.34 */ NOT_SUPPORTED_IN_CLASS, /** * too many forward references. Since: 2.34 */ TOO_MANY_FORWARD_REFERENCES, /** * the name is too long in "(*MARK)", "(*PRUNE)", * "(*SKIP)", or "(*THEN)". Since: 2.34 */ NAME_TOO_LONG, /** * the character value in the \\u sequence is * too large. Since: 2.34 */ CHARACTER_VALUE_TOO_LARGE, } /** * An enumeration specifying the base position for a * g_io_channel_seek_position() operation. */ enum SeekType { /** * the current position in the file. */ CUR, /** * the start of the file. */ SET, /** * the end of the file. */ END, } /** * Error codes returned by shell functions. */ enum ShellError { /** * Mismatched or otherwise mangled quoting. */ BAD_QUOTING, /** * String to be parsed was empty. */ EMPTY_STRING, /** * Some other error. */ FAILED, } enum SliceConfig { ALWAYS_MALLOC, BYPASS_MAGAZINES, WORKING_SET_MSECS, COLOR_INCREMENT, CHUNK_SIZES, CONTENTION_COUNTER, } /** * Error codes returned by spawning processes. */ enum SpawnError { /** * Fork failed due to lack of memory. */ FORK, /** * Read or select on pipes failed. */ READ, /** * Changing to working directory failed. */ CHDIR, /** * execv() returned `EACCES` */ ACCES, /** * execv() returned `EPERM` */ PERM, /** * execv() returned `E2BIG` */ TOO_BIG, /** * deprecated alias for %G_SPAWN_ERROR_TOO_BIG (deprecated since GLib 2.32) */ TODO_2BIG, /** * execv() returned `ENOEXEC` */ NOEXEC, /** * execv() returned `ENAMETOOLONG` */ NAMETOOLONG, /** * execv() returned `ENOENT` */ NOENT, /** * execv() returned `ENOMEM` */ NOMEM, /** * execv() returned `ENOTDIR` */ NOTDIR, /** * execv() returned `ELOOP` */ LOOP, /** * execv() returned `ETXTBUSY` */ TXTBUSY, /** * execv() returned `EIO` */ IO, /** * execv() returned `ENFILE` */ NFILE, /** * execv() returned `EMFILE` */ MFILE, /** * execv() returned `EINVAL` */ INVAL, /** * execv() returned `EISDIR` */ ISDIR, /** * execv() returned `ELIBBAD` */ LIBBAD, /** * Some other fatal failure, * `error->message` should explain. */ FAILED, } /** * The type of file to return the filename for, when used with * g_test_build_filename(). * * These two options correspond rather directly to the 'dist' and * 'built' terminology that automake uses and are explicitly used to * distinguish between the 'srcdir' and 'builddir' being separate. All * files in your project should either be dist (in the * `EXTRA_DIST` or `dist_schema_DATA` * sense, in which case they will always be in the srcdir) or built (in * the `BUILT_SOURCES` sense, in which case they will * always be in the builddir). * * Note: as a general rule of automake, files that are generated only as * part of the build-from-git process (but then are distributed with the * tarball) always go in srcdir (even if doing a srcdir != builddir * build from git) and are considered as distributed files. */ enum TestFileType { /** * a file that was included in the distribution tarball */ DIST, /** * a file that was built on the compiling machine */ BUILT, } enum TestLogType { NONE, ERROR, START_BINARY, LIST_CASE, SKIP_CASE, START_CASE, STOP_CASE, MIN_RESULT, MAX_RESULT, MESSAGE, START_SUITE, STOP_SUITE, } enum TestResult { SUCCESS, SKIPPED, FAILURE, INCOMPLETE, } /** * Possible errors of thread related functions. */ enum ThreadError { /** * a thread couldn't be created due to resource * shortage. Try again later. */ THREAD_ERROR_AGAIN, } /** * Disambiguates a given time in two ways. * * First, specifies if the given time is in universal or local time. * * Second, if the time is in local time, specifies if it is local * standard time or local daylight time. This is important for the case * where the same local time occurs twice (during daylight savings time * transitions, for example). */ enum TimeType { /** * the time is in local standard time */ STANDARD, /** * the time is in local daylight time */ DAYLIGHT, /** * the time is in UTC */ UNIVERSAL, } /** * The possible types of token returned from each * g_scanner_get_next_token() call. */ enum TokenType { /** * the end of the file */ EOF, /** * a '(' character */ LEFT_PAREN, /** * a ')' character */ RIGHT_PAREN, /** * a '{' character */ LEFT_CURLY, /** * a '}' character */ RIGHT_CURLY, /** * a '[' character */ LEFT_BRACE, /** * a ']' character */ RIGHT_BRACE, /** * a '=' character */ EQUAL_SIGN, /** * a ',' character */ COMMA, /** * not a token */ NONE, /** * an error occurred */ ERROR, /** * a character */ CHAR, /** * a binary integer */ BINARY, /** * an octal integer */ OCTAL, /** * an integer */ INT, /** * a hex integer */ HEX, /** * a floating point number */ FLOAT, /** * a string */ STRING, /** * a symbol */ SYMBOL, /** * an identifier */ IDENTIFIER, /** * a null identifier */ IDENTIFIER_NULL, /** * one line comment */ COMMENT_SINGLE, /** * multi line comment */ COMMENT_MULTI, } /** * Specifies the type of traversal performed by g_tree_traverse(), * g_node_traverse() and g_node_find(). The different orders are * illustrated here: * - In order: A, B, C, D, E, F, G, H, I * ![](Sorted_binary_tree_inorder.svg) * - Pre order: F, B, A, D, C, E, G, I, H * ![](Sorted_binary_tree_preorder.svg) * - Post order: A, C, E, D, B, H, I, G, F * ![](Sorted_binary_tree_postorder.svg) * - Level order: F, B, G, A, D, I, C, E, H * ![](Sorted_binary_tree_breadth-first_traversal.svg) */ enum TraverseType { /** * vists a node's left child first, then the node itself, * then its right child. This is the one to use if you * want the output sorted according to the compare * function. */ IN_ORDER, /** * visits a node, then its children. */ PRE_ORDER, /** * visits the node's children, then the node itself. */ POST_ORDER, /** * is not implemented for * [balanced binary trees][glib-Balanced-Binary-Trees]. * For [n-ary trees][glib-N-ary-Trees], it * vists the root node first, then its children, then * its grandchildren, and so on. Note that this is less * efficient than the other orders. */ LEVEL_ORDER, } /** * These are the possible line break classifications. * * Since new unicode versions may add new types here, applications should be ready * to handle unknown values. They may be regarded as %G_UNICODE_BREAK_UNKNOWN. * * See [Unicode Line Breaking Algorithm](http://www.unicode.org/unicode/reports/tr14/). */ enum UnicodeBreakType { /** * Mandatory Break (BK) */ MANDATORY, /** * Carriage Return (CR) */ CARRIAGE_RETURN, /** * Line Feed (LF) */ LINE_FEED, /** * Attached Characters and Combining Marks (CM) */ COMBINING_MARK, /** * Surrogates (SG) */ SURROGATE, /** * Zero Width Space (ZW) */ ZERO_WIDTH_SPACE, /** * Inseparable (IN) */ INSEPARABLE, /** * Non-breaking ("Glue") (GL) */ NON_BREAKING_GLUE, /** * Contingent Break Opportunity (CB) */ CONTINGENT, /** * Space (SP) */ SPACE, /** * Break Opportunity After (BA) */ AFTER, /** * Break Opportunity Before (BB) */ BEFORE, /** * Break Opportunity Before and After (B2) */ BEFORE_AND_AFTER, /** * Hyphen (HY) */ HYPHEN, /** * Nonstarter (NS) */ NON_STARTER, /** * Opening Punctuation (OP) */ OPEN_PUNCTUATION, /** * Closing Punctuation (CL) */ CLOSE_PUNCTUATION, /** * Ambiguous Quotation (QU) */ QUOTATION, /** * Exclamation/Interrogation (EX) */ EXCLAMATION, /** * Ideographic (ID) */ IDEOGRAPHIC, /** * Numeric (NU) */ NUMERIC, /** * Infix Separator (Numeric) (IS) */ INFIX_SEPARATOR, /** * Symbols Allowing Break After (SY) */ SYMBOL, /** * Ordinary Alphabetic and Symbol Characters (AL) */ ALPHABETIC, /** * Prefix (Numeric) (PR) */ PREFIX, /** * Postfix (Numeric) (PO) */ POSTFIX, /** * Complex Content Dependent (South East Asian) (SA) */ COMPLEX_CONTEXT, /** * Ambiguous (Alphabetic or Ideographic) (AI) */ AMBIGUOUS, /** * Unknown (XX) */ UNKNOWN, /** * Next Line (NL) */ NEXT_LINE, /** * Word Joiner (WJ) */ WORD_JOINER, /** * Hangul L Jamo (JL) */ HANGUL_L_JAMO, /** * Hangul V Jamo (JV) */ HANGUL_V_JAMO, /** * Hangul T Jamo (JT) */ HANGUL_T_JAMO, /** * Hangul LV Syllable (H2) */ HANGUL_LV_SYLLABLE, /** * Hangul LVT Syllable (H3) */ HANGUL_LVT_SYLLABLE, /** * Closing Parenthesis (CP). Since 2.28. Deprecated: 2.70: Use %G_UNICODE_BREAK_CLOSE_PARENTHESIS instead. */ CLOSE_PARANTHESIS, /** * Closing Parenthesis (CP). Since 2.70 */ CLOSE_PARENTHESIS, /** * Conditional Japanese Starter (CJ). Since: 2.32 */ CONDITIONAL_JAPANESE_STARTER, /** * Hebrew Letter (HL). Since: 2.32 */ HEBREW_LETTER, /** * Regional Indicator (RI). Since: 2.36 */ REGIONAL_INDICATOR, /** * Emoji Base (EB). Since: 2.50 */ EMOJI_BASE, /** * Emoji Modifier (EM). Since: 2.50 */ EMOJI_MODIFIER, /** * Zero Width Joiner (ZWJ). Since: 2.50 */ ZERO_WIDTH_JOINER, } /** * The #GUnicodeScript enumeration identifies different writing * systems. The values correspond to the names as defined in the * Unicode standard. The enumeration has been added in GLib 2.14, * and is interchangeable with #PangoScript. * * Note that new types may be added in the future. Applications * should be ready to handle unknown values. * See [Unicode Standard Annex #24: Script names](http://www.unicode.org/reports/tr24/). */ enum UnicodeScript { /** * a value never returned from g_unichar_get_script() */ INVALID_CODE, /** * a character used by multiple different scripts */ COMMON, /** * a mark glyph that takes its script from the * base glyph to which it is attached */ INHERITED, /** * Arabic */ ARABIC, /** * Armenian */ ARMENIAN, /** * Bengali */ BENGALI, /** * Bopomofo */ BOPOMOFO, /** * Cherokee */ CHEROKEE, /** * Coptic */ COPTIC, /** * Cyrillic */ CYRILLIC, /** * Deseret */ DESERET, /** * Devanagari */ DEVANAGARI, /** * Ethiopic */ ETHIOPIC, /** * Georgian */ GEORGIAN, /** * Gothic */ GOTHIC, /** * Greek */ GREEK, /** * Gujarati */ GUJARATI, /** * Gurmukhi */ GURMUKHI, /** * Han */ HAN, /** * Hangul */ HANGUL, /** * Hebrew */ HEBREW, /** * Hiragana */ HIRAGANA, /** * Kannada */ KANNADA, /** * Katakana */ KATAKANA, /** * Khmer */ KHMER, /** * Lao */ LAO, /** * Latin */ LATIN, /** * Malayalam */ MALAYALAM, /** * Mongolian */ MONGOLIAN, /** * Myanmar */ MYANMAR, /** * Ogham */ OGHAM, /** * Old Italic */ OLD_ITALIC, /** * Oriya */ ORIYA, /** * Runic */ RUNIC, /** * Sinhala */ SINHALA, /** * Syriac */ SYRIAC, /** * Tamil */ TAMIL, /** * Telugu */ TELUGU, /** * Thaana */ THAANA, /** * Thai */ THAI, /** * Tibetan */ TIBETAN, /** * Canadian Aboriginal */ CANADIAN_ABORIGINAL, /** * Yi */ YI, /** * Tagalog */ TAGALOG, /** * Hanunoo */ HANUNOO, /** * Buhid */ BUHID, /** * Tagbanwa */ TAGBANWA, /** * Braille */ BRAILLE, /** * Cypriot */ CYPRIOT, /** * Limbu */ LIMBU, /** * Osmanya */ OSMANYA, /** * Shavian */ SHAVIAN, /** * Linear B */ LINEAR_B, /** * Tai Le */ TAI_LE, /** * Ugaritic */ UGARITIC, /** * New Tai Lue */ NEW_TAI_LUE, /** * Buginese */ BUGINESE, /** * Glagolitic */ GLAGOLITIC, /** * Tifinagh */ TIFINAGH, /** * Syloti Nagri */ SYLOTI_NAGRI, /** * Old Persian */ OLD_PERSIAN, /** * Kharoshthi */ KHAROSHTHI, /** * an unassigned code point */ UNKNOWN, /** * Balinese */ BALINESE, /** * Cuneiform */ CUNEIFORM, /** * Phoenician */ PHOENICIAN, /** * Phags-pa */ PHAGS_PA, /** * N'Ko */ NKO, /** * Kayah Li. Since 2.16.3 */ KAYAH_LI, /** * Lepcha. Since 2.16.3 */ LEPCHA, /** * Rejang. Since 2.16.3 */ REJANG, /** * Sundanese. Since 2.16.3 */ SUNDANESE, /** * Saurashtra. Since 2.16.3 */ SAURASHTRA, /** * Cham. Since 2.16.3 */ CHAM, /** * Ol Chiki. Since 2.16.3 */ OL_CHIKI, /** * Vai. Since 2.16.3 */ VAI, /** * Carian. Since 2.16.3 */ CARIAN, /** * Lycian. Since 2.16.3 */ LYCIAN, /** * Lydian. Since 2.16.3 */ LYDIAN, /** * Avestan. Since 2.26 */ AVESTAN, /** * Bamum. Since 2.26 */ BAMUM, /** * Egyptian Hieroglpyhs. Since 2.26 */ EGYPTIAN_HIEROGLYPHS, /** * Imperial Aramaic. Since 2.26 */ IMPERIAL_ARAMAIC, /** * Inscriptional Pahlavi. Since 2.26 */ INSCRIPTIONAL_PAHLAVI, /** * Inscriptional Parthian. Since 2.26 */ INSCRIPTIONAL_PARTHIAN, /** * Javanese. Since 2.26 */ JAVANESE, /** * Kaithi. Since 2.26 */ KAITHI, /** * Lisu. Since 2.26 */ LISU, /** * Meetei Mayek. Since 2.26 */ MEETEI_MAYEK, /** * Old South Arabian. Since 2.26 */ OLD_SOUTH_ARABIAN, /** * Old Turkic. Since 2.28 */ OLD_TURKIC, /** * Samaritan. Since 2.26 */ SAMARITAN, /** * Tai Tham. Since 2.26 */ TAI_THAM, /** * Tai Viet. Since 2.26 */ TAI_VIET, /** * Batak. Since 2.28 */ BATAK, /** * Brahmi. Since 2.28 */ BRAHMI, /** * Mandaic. Since 2.28 */ MANDAIC, /** * Chakma. Since: 2.32 */ CHAKMA, /** * Meroitic Cursive. Since: 2.32 */ MEROITIC_CURSIVE, /** * Meroitic Hieroglyphs. Since: 2.32 */ MEROITIC_HIEROGLYPHS, /** * Miao. Since: 2.32 */ MIAO, /** * Sharada. Since: 2.32 */ SHARADA, /** * Sora Sompeng. Since: 2.32 */ SORA_SOMPENG, /** * Takri. Since: 2.32 */ TAKRI, /** * Bassa. Since: 2.42 */ BASSA_VAH, /** * Caucasian Albanian. Since: 2.42 */ CAUCASIAN_ALBANIAN, /** * Duployan. Since: 2.42 */ DUPLOYAN, /** * Elbasan. Since: 2.42 */ ELBASAN, /** * Grantha. Since: 2.42 */ GRANTHA, /** * Kjohki. Since: 2.42 */ KHOJKI, /** * Khudawadi, Sindhi. Since: 2.42 */ KHUDAWADI, /** * Linear A. Since: 2.42 */ LINEAR_A, /** * Mahajani. Since: 2.42 */ MAHAJANI, /** * Manichaean. Since: 2.42 */ MANICHAEAN, /** * Mende Kikakui. Since: 2.42 */ MENDE_KIKAKUI, /** * Modi. Since: 2.42 */ MODI, /** * Mro. Since: 2.42 */ MRO, /** * Nabataean. Since: 2.42 */ NABATAEAN, /** * Old North Arabian. Since: 2.42 */ OLD_NORTH_ARABIAN, /** * Old Permic. Since: 2.42 */ OLD_PERMIC, /** * Pahawh Hmong. Since: 2.42 */ PAHAWH_HMONG, /** * Palmyrene. Since: 2.42 */ PALMYRENE, /** * Pau Cin Hau. Since: 2.42 */ PAU_CIN_HAU, /** * Psalter Pahlavi. Since: 2.42 */ PSALTER_PAHLAVI, /** * Siddham. Since: 2.42 */ SIDDHAM, /** * Tirhuta. Since: 2.42 */ TIRHUTA, /** * Warang Citi. Since: 2.42 */ WARANG_CITI, /** * Ahom. Since: 2.48 */ AHOM, /** * Anatolian Hieroglyphs. Since: 2.48 */ ANATOLIAN_HIEROGLYPHS, /** * Hatran. Since: 2.48 */ HATRAN, /** * Multani. Since: 2.48 */ MULTANI, /** * Old Hungarian. Since: 2.48 */ OLD_HUNGARIAN, /** * Signwriting. Since: 2.48 */ SIGNWRITING, /** * Adlam. Since: 2.50 */ ADLAM, /** * Bhaiksuki. Since: 2.50 */ BHAIKSUKI, /** * Marchen. Since: 2.50 */ MARCHEN, /** * Newa. Since: 2.50 */ NEWA, /** * Osage. Since: 2.50 */ OSAGE, /** * Tangut. Since: 2.50 */ TANGUT, /** * Masaram Gondi. Since: 2.54 */ MASARAM_GONDI, /** * Nushu. Since: 2.54 */ NUSHU, /** * Soyombo. Since: 2.54 */ SOYOMBO, /** * Zanabazar Square. Since: 2.54 */ ZANABAZAR_SQUARE, /** * Dogra. Since: 2.58 */ DOGRA, /** * Gunjala Gondi. Since: 2.58 */ GUNJALA_GONDI, /** * Hanifi Rohingya. Since: 2.58 */ HANIFI_ROHINGYA, /** * Makasar. Since: 2.58 */ MAKASAR, /** * Medefaidrin. Since: 2.58 */ MEDEFAIDRIN, /** * Old Sogdian. Since: 2.58 */ OLD_SOGDIAN, /** * Sogdian. Since: 2.58 */ SOGDIAN, /** * Elym. Since: 2.62 */ ELYMAIC, /** * Nand. Since: 2.62 */ NANDINAGARI, /** * Rohg. Since: 2.62 */ NYIAKENG_PUACHUE_HMONG, /** * Wcho. Since: 2.62 */ WANCHO, /** * Chorasmian. Since: 2.66 */ CHORASMIAN, /** * Dives Akuru. Since: 2.66 */ DIVES_AKURU, /** * Khitan small script. Since: 2.66 */ KHITAN_SMALL_SCRIPT, /** * Yezidi. Since: 2.66 */ YEZIDI, /** * Cypro-Minoan. Since: 2.72 */ CYPRO_MINOAN, /** * Old Uyghur. Since: 2.72 */ OLD_UYGHUR, /** * Tangsa. Since: 2.72 */ TANGSA, /** * Toto. Since: 2.72 */ TOTO, /** * Vithkuqi. Since: 2.72 */ VITHKUQI, /** * Mathematical notation. Since: 2.72 */ MATH, /** * Kawi. Since 2.74 */ KAWI, /** * Nag Mundari. Since 2.74 */ NAG_MUNDARI, } /** * These are the possible character classifications from the * Unicode specification. * See [Unicode Character Database](http://www.unicode.org/reports/tr44/#General_Category_Values). */ enum UnicodeType { /** * General category "Other, Control" (Cc) */ CONTROL, /** * General category "Other, Format" (Cf) */ FORMAT, /** * General category "Other, Not Assigned" (Cn) */ UNASSIGNED, /** * General category "Other, Private Use" (Co) */ PRIVATE_USE, /** * General category "Other, Surrogate" (Cs) */ SURROGATE, /** * General category "Letter, Lowercase" (Ll) */ LOWERCASE_LETTER, /** * General category "Letter, Modifier" (Lm) */ MODIFIER_LETTER, /** * General category "Letter, Other" (Lo) */ OTHER_LETTER, /** * General category "Letter, Titlecase" (Lt) */ TITLECASE_LETTER, /** * General category "Letter, Uppercase" (Lu) */ UPPERCASE_LETTER, /** * General category "Mark, Spacing" (Mc) */ SPACING_MARK, /** * General category "Mark, Enclosing" (Me) */ ENCLOSING_MARK, /** * General category "Mark, Nonspacing" (Mn) */ NON_SPACING_MARK, /** * General category "Number, Decimal Digit" (Nd) */ DECIMAL_NUMBER, /** * General category "Number, Letter" (Nl) */ LETTER_NUMBER, /** * General category "Number, Other" (No) */ OTHER_NUMBER, /** * General category "Punctuation, Connector" (Pc) */ CONNECT_PUNCTUATION, /** * General category "Punctuation, Dash" (Pd) */ DASH_PUNCTUATION, /** * General category "Punctuation, Close" (Pe) */ CLOSE_PUNCTUATION, /** * General category "Punctuation, Final quote" (Pf) */ FINAL_PUNCTUATION, /** * General category "Punctuation, Initial quote" (Pi) */ INITIAL_PUNCTUATION, /** * General category "Punctuation, Other" (Po) */ OTHER_PUNCTUATION, /** * General category "Punctuation, Open" (Ps) */ OPEN_PUNCTUATION, /** * General category "Symbol, Currency" (Sc) */ CURRENCY_SYMBOL, /** * General category "Symbol, Modifier" (Sk) */ MODIFIER_SYMBOL, /** * General category "Symbol, Math" (Sm) */ MATH_SYMBOL, /** * General category "Symbol, Other" (So) */ OTHER_SYMBOL, /** * General category "Separator, Line" (Zl) */ LINE_SEPARATOR, /** * General category "Separator, Paragraph" (Zp) */ PARAGRAPH_SEPARATOR, /** * General category "Separator, Space" (Zs) */ SPACE_SEPARATOR, } /** * Error codes returned by #GUri methods. */ enum UriError { /** * Generic error if no more specific error is available. * See the error message for details. */ FAILED, /** * The scheme of a URI could not be parsed. */ BAD_SCHEME, /** * The user/userinfo of a URI could not be parsed. */ BAD_USER, /** * The password of a URI could not be parsed. */ BAD_PASSWORD, /** * The authentication parameters of a URI could not be parsed. */ BAD_AUTH_PARAMS, /** * The host of a URI could not be parsed. */ BAD_HOST, /** * The port of a URI could not be parsed. */ BAD_PORT, /** * The path of a URI could not be parsed. */ BAD_PATH, /** * The query of a URI could not be parsed. */ BAD_QUERY, /** * The fragment of a URI could not be parsed. */ BAD_FRAGMENT, } /** * These are logical ids for special directories which are defined * depending on the platform used. You should use g_get_user_special_dir() * to retrieve the full path associated to the logical id. * * The #GUserDirectory enumeration can be extended at later date. Not * every platform has a directory for every logical id in this * enumeration. */ enum UserDirectory { /** * the user's Desktop directory */ DIRECTORY_DESKTOP, /** * the user's Documents directory */ DIRECTORY_DOCUMENTS, /** * the user's Downloads directory */ DIRECTORY_DOWNLOAD, /** * the user's Music directory */ DIRECTORY_MUSIC, /** * the user's Pictures directory */ DIRECTORY_PICTURES, /** * the user's shared directory */ DIRECTORY_PUBLIC_SHARE, /** * the user's Templates directory */ DIRECTORY_TEMPLATES, /** * the user's Movies directory */ DIRECTORY_VIDEOS, /** * the number of enum values */ N_DIRECTORIES, } /** * The range of possible top-level types of #GVariant instances. */ enum VariantClass { /** * The #GVariant is a boolean. */ BOOLEAN, /** * The #GVariant is a byte. */ BYTE, /** * The #GVariant is a signed 16 bit integer. */ INT16, /** * The #GVariant is an unsigned 16 bit integer. */ UINT16, /** * The #GVariant is a signed 32 bit integer. */ INT32, /** * The #GVariant is an unsigned 32 bit integer. */ UINT32, /** * The #GVariant is a signed 64 bit integer. */ INT64, /** * The #GVariant is an unsigned 64 bit integer. */ UINT64, /** * The #GVariant is a file handle index. */ HANDLE, /** * The #GVariant is a double precision floating * point value. */ DOUBLE, /** * The #GVariant is a normal string. */ STRING, /** * The #GVariant is a D-Bus object path * string. */ OBJECT_PATH, /**