GLib Reference Manual

for GLib 2.14.4

GLib Overview
  Compiling the GLib package — How to compile GLib itself
  Cross-compiling the GLib package — How to cross-compile GLib
  Compiling GLib Applications — How to compile your GLib application
  Running GLib Applications — How to run and debug your GLib application
  Changes to GLib — Incompatible changes made between successing versions of GLib
  Regular expression syntax — Syntax and semantics of the regular expressions supported by GRegex
  Mailing lists and bug reports — Getting help with GLib
GLib Fundamentals
  Version Information — Variables and functions to check the GLib version
  Basic Types — standard GLib types, defined for ease-of-use and portability
  Limits of Basic Types — portable method of determining the limits of the standard types
  Standard Macros — commonly-used macros.
  Type Conversion Macros — portably storing integers in pointer variables
  Byte Order Macros — a portable way to convert between different byte orders
  Numerical Definitions — mathematical constants, and floating point decomposition
  Miscellaneous Macros — specialized macros which are not used often
  Atomic Operations — basic atomic integer and pointer operations
GLib Core Application Support
  The Main Event Loop — manages all available sources of events
  Threads — thread abstraction; including threads, different mutexes, conditions and thread private data
  Thread Pools — pools of threads to execute work concurrently
  Asynchronous Queues — asynchronous communication between threads
  Dynamic Loading of Modules — portable method for dynamically loading 'plug-ins'
  Memory Allocation — general memory-handling
  IO Channels — portable support for using files, pipes and sockets
  Error Reporting — a system for reporting errors
  Message Output and Debugging Functions — functions to output messages and help debug applications
  Message Logging — versatile support for logging messages with different levels of importance
GLib Utilities
  String Utility Functions — various string-related functions
  Character Set Conversion — convert strings between different character sets using `iconv()`
  Unicode Manipulation — functions operating on Unicode characters and UTF-8 strings
  Base64 Encoding — encodes and decodes data in Base64 format
  Internationalization — gettext support macros
  Date and Time Functions — calendrical calculations and miscellaneous time stuff
  Random Numbers — pseudo-random number generator
  Hook Functions — support for manipulating lists of hook functions
  Miscellaneous Utility Functions — a selection of portable utility functions
  Lexical Scanner — a general purpose lexical scanner
  Automatic String Completion — support for automatic completion using a group of target strings
  Timers — keep track of elapsed time
  Spawning Processes — process launching with `fork()`/`exec()`
  File Utilities — various file-related functions
  Shell-related Utilities — shell-like commandline handling
  Commandline option parser — parses commandline options
  Glob-style pattern matching — matches strings against patterns containing '*' (wildcard) and '?' (joker)
  Perl-compatible regular expressions — matches strings against regular expressions
  Simple XML Subset Parser — parses a subset of XML
  Key-value file parser — parses `.ini`-like config files
  Bookmark file parser — parses files containing bookmarks
  Windows Compatibility Functions — UNIX emulation on Windows
GLib Data Types
  Memory Slices — efficient way to allocate groups of equal-sized chunks of memory
  Memory Chunks — deprecated way to allocate groups of equal-sized chunks of memory
  Doubly-Linked Lists — linked lists containing integer values or pointers to data, with the ability to iterate over the list in both directions
  Singly-Linked Lists — linked lists containing integer values or pointers to data, limited to iterating over the list in one direction
  Double-ended Queues — double-ended queue data structure
  Sequences — scalable lists
  Trash Stacks — maintain a stack of unused allocated memory chunks
  Hash Tables — associations between keys and values so that given a key the value can be found quickly
  Strings — text buffers which grow automatically as text is added
  String Chunks — efficient storage of groups of strings
  Arrays — arrays of arbitrary elements which grow automatically as elements are added
  Pointer Arrays — arrays of pointers to any type of data, which grow automatically as new elements are added
  Byte Arrays — arrays of bytes, which grow automatically as elements are added
  Balanced Binary Trees — a sorted collection of key/value pairs optimized for searching and traversing in order
  N-ary Trees — trees of data with any number of branches
  Quarks — a 2-way association between a string and a unique integer identifier
  Keyed Data Lists — lists of data elements which are accessible by a string or GQuark identifier
  Datasets — associate groups of data elements with particular memory locations
  Relations and Tuples — tables of data which can be indexed on any number of fields
  Caches — caches allow sharing of complex data structures to save resources
  Memory Allocators — deprecated way to allocate chunks of memory for GList, GSList and GNode
GLib Tools
  glib-gettextize — gettext internationalization utility
Index
Index of deprecated symbols
Index of new symbols in 2.2
Index of new symbols in 2.4
Index of new symbols in 2.6
Index of new symbols in 2.8
Index of new symbols in 2.10
Index of new symbols in 2.12
Index of new symbols in 2.14