GLib Reference Manual |
---|
for GLib 2.20.3 The latest version of this documentation can be found on-line at http://library.gnome.org/devel/glib/unstable/.
- 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
- Data Checksums — Computes the checksum for data
- 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
- File Utilities — various file-related functions
- URI Functions — URI 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
- Testing — a test framework
- 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
- gtester — test running utility
- gtester-report — test report formatting 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
- Index of new symbols in 2.16
- Index of new symbols in 2.18
- Index of new symbols in 2.20