aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Voss <mail@thomasvoss.com> 2024-04-16 12:48:59 +0200
committerThomas Voss <mail@thomasvoss.com> 2024-04-16 12:48:59 +0200
commitb3902aa52b091a895ca377642c9222ca972da703 (patch)
tree85506a3155247bceba6d6495d17c513b31c10275
parent39b5c6f45e6b84861e5edeaef323ebdf9238eaf0 (diff)
Update README
-rw-r--r--README63
1 files changed, 63 insertions, 0 deletions
diff --git a/README b/README
index 396fde5..684c32e 100644
--- a/README
+++ b/README
@@ -47,6 +47,69 @@ DISCLAIMER:
you not?
+DOCUMENTATION:
+
+ All headers, types, functions, etc. are documented in the manual
+ pages found in the man/ subdirectory. You can install these globally
+ to your system by running the following:
+
+ $ ./make manstall
+
+ Some important manuals are:
+ • mlib(7) — overview of the MLib library
+ • ⟨header-name⟩.h(3) — overview of the ⟨header-name⟩.h header
+
+
+FEATURES:
+
+ The following is a non-exhaustive list of features.
+
+ • alloc.h
+ • Arena allocator
+ • realloc() wrapper with overflow checking
+ • realloc() wrapper with overflow checking that crashes on failure
+ • bitset.h
+ • Bitset implementation and operations
+ • dynarr.h
+ • Dynamic-array implementation and operations
+ • Macros for iterating forwards and backwards
+ • errors.h
+ • Functions for getting and setting the program name
+ • Functions for printing diagnostics and optionally crashing with
+ strerror() support
+ • macros.h
+ • MIN()/MAX()/CLAMP()
+ • Better assertion macro
+ • More readable strcmp()/memcmp()/etc. wrappers for equality checking
+ • Static array length macro
+ • mbio.h
+ • Read individual runes from files
+ • mbstring.h
+ • Encode and decode runes
+ • Iterate over UTF-8 codepoints
+ • Count UTF-8 codepoints
+ • UTF-8 validation
+ • Various string.h analogues with UTF-8 support
+ • Random utility macros and -constants
+ • optparse.h
+ • Thread-safe (non-global) UTF-8-aware option parsing with
+ support for short- and long options
+ • rune.h
+ • Format string macros for the printf() and scanf() families of
+ functions
+ • Macro for defining rune constants
+ • Useful rune-related constants
+ • unicode/prop.h
+ • Functions for getting Unicode character properties for runes
+ • Properties related to case-mapping are context-aware (via a
+ context-struct argument)
+ • unicode/string.h
+ • Grapheme iteration and -counting
+ • Unicode-aware case-mapping of strings with truncation checking
+ • Case-mapping supports optional language-specific quirks (Azeri,
+ Lithuanian, German, etc.)
+
+
PLANNED FEATURES:
• Missing Unicode Properties (unicode/prop.h)