GLib Reference Manual |
---|
for GLib 2.56.0 The latest version of this documentation can be found on-line at https://developer.gnome.org/glib/unstable/.
- GLib Overview
- Compiling the GLib package — How to compile GLib itself
- Cross-compiling the GLib package — How to cross-compile GLib
- Writing GLib Applications — General considerations when programming with 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
- 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
- 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
- Bounds-checking integer arithmetic — a set of helpers for performing checked integer arithmetic
- 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 — portable support for threads, mutexes, locks, 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
- Memory Slices — efficient way to allocate groups of equal-sized chunks of memory
- IO Channels — portable support for using files, pipes and sockets
- Error Reporting — a system for reporting errors
- Warnings and Assertions
- Message Output and Debugging Functions — functions to output messages and help debug applications
- GLib Utilities
- String Utility Functions — various string-related functions
- Character Set Conversion — convert strings between different character sets
- 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
- Secure HMAC Digests — computes the HMAC for data
- Internationalization — gettext support macros
- Date and Time Functions — calendrical calculations and miscellaneous time stuff
- GTimeZone — a structure representing a time zone
- GDateTime — a structure representing Date and Time
- 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
- Timers — keep track of elapsed time
- Spawning Processes — process launching
- File Utilities — various file-related functions
- URI Functions — manipulating URIs
- Hostname Utilities — Internet hostname utilities
- 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
- Regular expression syntax — syntax and semantics of regular expressions supported by GRegex
- 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
- UNIX-specific utilities and integration — pipes, signal handling
- Windows Compatibility Functions — UNIX emulation on Windows
- GUuid — a universally unique identifier
- GLib Data Types
- Doubly-Linked Lists — linked lists that can be iterated over in both directions
- Singly-Linked Lists — linked lists that can be iterated 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
- 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
- GVariantType — introduction to the GVariant type system
- GVariant — strongly typed value datatype
- GVariant Format Strings — varargs conversion of GVariants
- GVariant Text Format — textual representation of GVariants
- Deprecated APIs
- Deprecated thread API — old thread APIs (for reference only)
- Caches — caches allow sharing of complex data structures to save resources
- Relations and Tuples — tables of data which can be indexed on any number of fields
- Automatic String Completion — support for automatic completion using a group of target strings
- GLib Tools
- glib-gettextize — gettext internationalization utility
- gtester — test running utility
- gtester-report — test report formatting utility
- Index
- Annotation Glossary