libcxx Namespace
libcxx
The libcxx
namespace encompasses the C and C++ standard library headers for use in the current version of Helix.
C Standard Library Headers
Cross-Platform C Headers
<fcntl.h>
- File control options<malloc.h>
- Memory allocation (non-standard)<memory.h>
- Memory operations (non-standard)<sys/stat.h>
- File status<sys/timeb.h>
- Time utilities<sys/types.h>
- System types<sys/utime.h>
- File time modification
Windows-Specific C Headers
<conio.h>
- Console I/O (Microsoft-specific)<corecrt.h>
- Core runtime (Microsoft-specific)<corecrt_io.h>
- Core runtime I/O (Microsoft-specific)<corecrt_malloc.h>
- Core runtime memory allocation (Microsoft-specific)<corecrt_math.h>
- Core runtime math (Microsoft-specific)<corecrt_math_defines.h>
- Core runtime math defines (Microsoft-specific)<corecrt_memcpy_s.h>
- Core runtime secure memory copy (Microsoft-specific)<corecrt_memory.h>
- Core runtime memory (Microsoft-specific)<corecrt_search.h>
- Core runtime search (Microsoft-specific)<corecrt_share.h>
- Core runtime sharing (Microsoft-specific)<corecrt_startup.h>
- Core runtime startup (Microsoft-specific)<corecrt_stdio_config.h>
- Core runtime stdio config (Microsoft-specific)<corecrt_terminate.h>
- Core runtime termination (Microsoft-specific)<corecrt_wconio.h>
- Core runtime wide console I/O (Microsoft-specific)<corecrt_wctype.h>
- Core runtime wide character types (Microsoft-specific)<corecrt_wdirect.h>
- Core runtime wide directory (Microsoft-specific)<corecrt_wio.h>
- Core runtime wide I/O (Microsoft-specific)<corecrt_wprocess.h>
- Core runtime wide process (Microsoft-specific)<corecrt_wstdio.h>
- Core runtime wide stdio (Microsoft-specific)<corecrt_wstdlib.h>
- Core runtime wide stdlib (Microsoft-specific)<corecrt_wstring.h>
- Core runtime wide string (Microsoft-specific)<corecrt_wtime.h>
- Core runtime wide time (Microsoft-specific)<crtdbg.h>
- Debug heap (Microsoft-specific)<direct.h>
- Directory control (Microsoft-specific)<dos.h>
- DOS interface (Microsoft-specific)<fpieee.h>
- IEEE floating point (Microsoft-specific)<io.h>
- Low-level I/O (Microsoft-specific)<mbctype.h>
- Multibyte character types (Microsoft-specific)<mbstring.h>
- Multibyte string (Microsoft-specific)<minmax.h>
- Min/max macros (Microsoft-specific)<new.h>
- New operator (Microsoft-specific)<process.h>
- Process control (Microsoft-specific)<safeint.h>
- Safe integer operations (Microsoft-specific)<safeint_internal.h>
- Safe integer internals (Microsoft-specific)<share.h>
- File sharing (Microsoft-specific)<sys/locking.h>
- File locking (Microsoft-specific)<tchar.h>
- Generic text mappings (Microsoft-specific)
Unix-Specific C Headers
<pthread.h>
- POSIX threads<sys/mman.h>
- Memory management (POSIX)<sys/resource.h>
- Resource usage (POSIX)<unistd.h>
- POSIX operating system API
C++ Standard Library Headers
C++ Wrapper Headers for C Standard Library
<cassert>
- Conditionally compiled macro for assertion checking<cctype>
- Functions to determine character types<cerrno>
- Macro containing the last error number<cfenv>
- Floating-point environment<cfloat>
- Limits of float types<cinttypes>
- Formatting macros, intmax_t and uintmax_t math<clocale>
- Localization utilities<cmath>
- Mathematical functions<csetjmp>
- Macro for non-local jumps<csignal>
- Functions and macro constants for signal management<cstdarg>
- Handling of variable length argument lists<cstddef>
- Standard type definitions<cstdio>
- C-style input/output functions<cstdlib>
- General purpose utilities<cstring>
- Null-terminated byte string utilities<ctime>
- C-style time utilities<cuchar>
- Unicode character conversion facilities<cwchar>
- Wide string utilities<cwctype>
- Functions for determining wide character types
Mathematical C++ Headers
<ccomplex>
- Complex number type<complex>
- Complex number type<ctgmath>
- Type-generic math functions<numeric>
- Numeric operations on values in ranges<random>
- Random number generation facilities<valarray>
- Class for representing and manipulating arrays
Algorithms and Utilities
<algorithm>
- Algorithms for ranges of elements<functional>
- Function objects, function invocations, bind operations<iterator>
- Iterator utilities<ranges>
- Range access, primitives, requirements, utilities and adaptors<utility>
- Utility components
Containers
<array>
- Fixed-size sequence container<bitset>
- Bit array<deque>
- Double-ended queue<list>
- Doubly-linked list<map>
- Associative containers<queue>
- Queue container adaptors<set>
- Associative containers<stack>
- Stack container adaptor<unordered_map>
- Unordered associative containers<unordered_set>
- Unordered associative containers<vector>
- Dynamic array
Strings and Text Processing
<codecvt>
- Unicode conversion facilities<locale>
- Localization utilities<regex>
- Regular expressions<string>
- String types<string_view>
- String view
Input/Output
<fstream>
- File stream classes<iomanip>
- Input/output manipulators<ios>
- Input/output stream base classes<iosfwd>
- Forward declarations of input/output streams<iostream>
- Standard input/output streams<istream>
- Input stream classes<ostream>
- Output stream classes<sstream>
- String stream classes<streambuf>
- Stream buffer classes
Memory Management
<memory>
- Higher level memory management utilities<scoped_allocator>
- Nested allocator class
Threading and Concurrency
<atomic>
- Atomic operations library<condition_variable>
- Thread waiting conditions<future>
- Asynchronous computations<mutex>
- Mutual exclusion primitives<shared_mutex>
- Shared mutual exclusion primitives<thread>
- Thread support library
Type Support and Metaprogramming
<exception>
- Exception handling utilities<limits>
- Standardized way to query properties of fundamental types<stdexcept>
- Standard exception objects<system_error>
- System error support<tuple>
- Tuple types<type_traits>
- Compile-time type information<typeindex>
- Wrapper around type_info objects<typeinfo>
- Runtime type information utilities<variant>
- Type-safe union
C++20 and Later Features
<chrono>
- Time utilities<coroutine>
- Coroutine support library<optional>
- Optional objects<span>
- Object that can refer to a contiguous sequence of objects
Platform-Specific Extensions
Unix/Linux Extensions
<cxxabi.h>
- C++ ABI support (GCC-specific)
Windows Extensions
<processthreadsapi.h>
- Process and thread API (Windows-specific)<tlhelp32.h>
- Tool help functions (Windows-specific)<windows.h>
- Windows API (Windows-specific)