summaryrefslogtreecommitdiffhomepage
path: root/debian
diff options
context:
space:
mode:
authorRoland Reichwein <mail@reichwein.it>2021-02-14 17:50:51 +0100
committerRoland Reichwein <mail@reichwein.it>2021-02-14 17:50:51 +0100
commit268b7845af166c68b1c226f0be9ba5cf983ae91c (patch)
treeec17636d4411ae9f4fe70857a3cfddbe035e39e1 /debian
parent07c77b45ba9f74cfe1bed547bea1eeb705f0582b (diff)
Support different std containers, support different basic types
Diffstat (limited to 'debian')
-rw-r--r--debian/README.Debian21
1 files changed, 21 insertions, 0 deletions
diff --git a/debian/README.Debian b/debian/README.Debian
index 382d20d..0a47d0a 100644
--- a/debian/README.Debian
+++ b/debian/README.Debian
@@ -57,6 +57,11 @@ The following encodings are implicitly deducted from types:
* char16_t: UTF-16
* char32_t: UTF-32
+You can specify different container types directly:
+
+ std::deque<char> utf8_value {...};
+ std::list<wchar_t> utf16_value{unicode::convert<std::deque<char>, std::list<wchar_t>>(utf8_value)};
+
Explicit encoding specification is also possible:
std::string value {"äöü"};
@@ -70,6 +75,22 @@ Supported encodings are:
* unicode::ISO_8859_1
* unicode::ISO_8859_15
+Supported basic types:
+ * char
+ * char8_t (C++20)
+ * wchar_t (UTF-16 on Windows, UTF-32 on Linux)
+ * char16_t
+ * char32_t
+ * uint8_t, int8_t
+ * uint16_t, int16_t
+ * uint32_t, int32_t
+ * basically, all basic 8-bit, 16-bit and 32-bit that can encode
+ UTF-8, UTF-16 and UTF-32, respectively.
+
+Supported container types:
+ * All std container types that can be iterated (vector, list, deque, array)
+ * Source and target containers can be different container types
+
Validation can be done like this:
bool valid{unicode::is_valid_utf<char16_t>(utf16_value)};