summaryrefslogtreecommitdiff
path: root/src/uio.cc
AgeCommit message (Collapse)Author
2025-09-22Change io::Reader and company to return ReadError::Eof instead of 0.Joel Klinghed
It's debatable if Eof should be considered an error or not. But it is pretty clear it generally is a special response that needs special handling, so easier to keep with the unexpected lot. Also keeps better at higher abstraction levels, such as the line reader.
2025-09-17fixup! uio: Unicode readerJoel Klinghed
2025-09-17uio: Remove unnecessary wrappersJoel Klinghed
2025-09-15Add .clang-formatJoel Klinghed
Make it easier to keep a consistent style
2025-09-15uio: Unicode readerJoel Klinghed
Reads UTF-8 and UTF-16 into UTF-8 or UTF-16 strings. If strict is true, fails at first invalid character. If strict is false, invalid characters are replaced with U+FFFD. For the replacement, I changed behavior if uN::read_replace to only jump one byte. Otherwise a common invalid case when ISO-8859-1 or WIN-1252 are read as UTF-8 would skip many characters. If skip_bom is true any bom at start of stream is ignored. If skip_bom is false any bom will be included. Input format can be forced, if not detect is used which will try to guess and then fallback to UTF-8.