This is the list of all libraries:
Library | Description |
---|---|
Algorithms | 🟥 Placeholder library templated where algorithms will be placed |
Async | 🟨 Async I/O (files, sockets, timers, processes, fs events, threads wake-up) |
Async Streams | 🟨 Concurrently read and write a byte stream staying inside fixed buffers |
Build | 🟨 Minimal build system where builds are described in C++ |
Containers | 🟨 Generic containers (SC::Vector, SC::SmallVector, SC::Array etc.) |
File | 🟩 Synchronous Disk File I/O |
File System | 🟩 File System operations { exists, copy, delete } for { files and directories } |
File System Iterator | 🟨 Enumerates files and directories inside a given path |
File System Watcher | 🟩 Notifications {add, remove, rename, modified} for files and directories |
Foundation | 🟩 Primitive types, asserts, limits, Function, Span, Result, Tagged Union |
Hashing | 🟩 Compute MD5 , SHA1 or SHA256 hashes for a stream of bytes |
Http | 🟥 HTTP parser, client and server |
Plugin | 🟨 Minimal dependency based plugin system with hot-reload |
Process | 🟩 Create child processes and chain them (also usable with Async library) |
Reflection | 🟩 Describe C++ types at compile time for serialization |
Serialization Binary | 🟨 Serialize to and from a binary format using Reflection |
Serialization Text | 🟨 Serialize to / from text formats (JSON) using Reflection |
Socket | 🟨 Synchronous socket networking and DNS lookup |
Strings | 🟩 String formatting / conversion / manipulation (ASCII / UTF8 / UTF16) |
Testing | 🟨 Simple testing framework used by all of the other libraries |
Threading | 🟥 Atomic, thread, thread pool, mutex, condition variable |
Time | 🟨 Time handling (relative, absolute, high resolution) |
Some libraries have C Bindings:
Library | Description |
---|---|
sc_hashing | C bindings for Hashing library. |