Commit Graph

101 Commits (1e331a12a2cb72dc2404a95b3401ef3bb1620a4d)

Author SHA1 Message Date
heck 1e331a12a2 Doc: format README.md 2022-02-22 22:37:31 +01:00
heck aa3ec7a911 add .clang-tidy 2022-02-22 22:37:12 +01:00
heck bceb2ee40e Build: more warnings etc... 2022-02-22 22:36:50 +01:00
heck 6ae1cad840 .gitignore 2022-02-14 15:28:18 +01:00
heck 6d59e27c29 Build: adds gtest prefix, clean out unused clutter 2022-02-14 15:28:09 +01:00
heck eaa77767a7 add .clang-format / reformat
If you dont like reformatting
of complete codebases, the solution is to USE this.
2022-02-14 15:25:55 +01:00
roker 4e43ab01f2 add docu, add tests. next try..... 2021-11-02 08:29:38 +01:00
roker 2ab0230cd6 update NFC data from Unicode 13.0.0 to Unicode 14.0.0. 2021-11-01 17:00:09 +01:00
roker b8df0024af test the remaining nfc_string member functions. 2021-10-08 18:32:15 +02:00
roker 34be0bc02b add some tests for nfc_string (only UTF8 for now, UTF16 is TODO). 2021-10-08 12:53:19 +02:00
roker 70b9218839 Oops... default c'tor forgotten. And some trivial assignment operators as alias to .assign(). 2021-10-08 12:52:43 +02:00
roker 935b1de2df fix unittest_nfc16 and comment the unusual behavior of <U+1D161>. :-/ 2021-10-08 11:15:01 +02:00
roker ebc949c092 using std::string_view. 2021-10-08 09:03:37 +02:00
roker 640d7d210b implement the last missing method: nfc_string::normalize(). 2021-10-08 09:01:46 +02:00
roker 97636fc2d0 implement the C++20 methods. makes nfc_string a boost::totally_ordered2 with StringView. 2021-10-08 03:04:59 +02:00
roker 8f75ed8ed9 implement more and more missing member functions of nfc_string. 2021-10-07 20:50:30 +02:00
roker 86bfec58c7 single-char isNFC() removed. Makes no sense. Add freestanding operator+() for nfc_string 2021-10-07 20:35:39 +02:00
roker f71397426b std::basic_string<CharT> has a FAT interface... I'll forward most of it to the embedded string. 2021-10-07 18:26:18 +02:00
roker d8bcff63f3 make nfc_string complete... 2021-10-07 15:22:12 +02:00
roker c81740b0e6 add class nfc_string 2021-10-07 14:55:22 +02:00
roker 4cd987c24f add German design document for libpEpDatatypes. 2021-10-06 19:18:51 +02:00
roker 01941f70ad C++17 is minimum requirement now. So replace pEp::string_view with std::string_view etc. 2021-10-05 17:37:46 +02:00
Volker Birk 2330093cff remove support for C++ < 17 and add more convenience functions 2021-10-02 23:28:15 +02:00
roker f5f12e2105 add UTF<char16_t>::utf_length(). Be more pedantic about surrogates where they're not allowed. 2021-10-01 17:05:27 +02:00
roker 4c9ff8de3a Merge remote-tracking branch 'refs/remotes/origin/master' 2021-10-01 15:32:08 +02:00
heck f677af8732 doc. 2021-10-01 14:44:49 +02:00
heck 3c8069fa14 concept. 2021-10-01 14:44:44 +02:00
roker 8205b7b9de bundle UTF handling functions as static member functions of a UTF class template to circumvent prohibition of partial function specialization. *sigh* 2021-10-01 14:39:58 +02:00
roker c0c278aad9 add u32string_view typedef. 2021-10-01 14:37:16 +02:00
roker f5b13062c3 start to encapsulate the functions in a class, to avoid the prohibition of partial function specialization. 2021-10-01 09:10:10 +02:00
roker f1179d91da move operations are 'noexcept'. implement copy_out() for stringpair and message. 2021-09-30 15:44:47 +02:00
roker bd7a9b4e93 use LANG_VERSION to switch from C++14 (default) to C++17, if necessary 2021-09-30 14:02:31 +02:00
heck 5349d21158 Missing include 2021-09-30 00:51:32 +00:00
roker c48088d788 add char* strdup_NFC(string_view s). FIXME: The more efficient implementation needs some more internal re-work, that's why this correct but stupid quick'n'dirty implementation is there for now. 2021-09-29 12:33:44 +02:00
roker 065e730d87 unrelated, but still not commited. 2021-09-29 12:20:41 +02:00
roker 5cdb6e3bdc add additional explicit template instantiations. :-/ 2021-09-29 10:53:51 +02:00
roker f914202788 add identity_list* Wrapper<::identity_list*>::copy_out() 2021-09-29 10:38:08 +02:00
roker 7973a9638b okay, we allow copying for all Wrapper where copy_out() is implemented. 2021-09-29 10:24:56 +02:00
roker d965b3115b allow non-const access to wrapped type. Can be dangerous! USE WITH CAUTION! 2021-09-29 09:50:01 +02:00
roker af5720bed0 add copy_out() to get a copy of the wrapped value. 2021-09-29 09:46:16 +02:00
roker 8f7f181899 oh, the missing comma confuses libetpan, letting it reject the whole Cc: line. pEpMIME parses 4 entries here. Who is rignt? 2021-09-28 17:49:36 +02:00
roker 5c399ab820 fix Wrapper<::message*>::_new() to use mime_decode_message() instead of a dummy. 2021-09-28 17:42:44 +02:00
roker 8306edaf09 resort the test to see what is working and what not, yet. 2021-09-28 17:12:50 +02:00
roker 0c82dcc5dc add an EXPECT_NE() to check for nullptr before derefencing it. Avoids segfault. But the test is still red. 2021-09-28 17:10:33 +02:00
roker 1da02a1eb2 add more comprehensive test for message parser. And... it segfaults. :-( 2021-09-28 17:03:14 +02:00
heck b536dac898 Build: Add local.conf.example 2021-09-09 20:59:23 +02:00
roker 5ffd66f169 fix the unittests for UTF-16 NFC tests 2021-07-12 13:29:58 +02:00
roker 1d1575e971 copy unittest_nfc.cc to unittest_nfc16.cc 2021-07-06 16:51:01 +02:00
roker 6e1f680ec5 use string_view in unittest_nfc. That avoids copying and makes compiler happy, too! 2021-07-06 16:34:05 +02:00
roker d3747a8b1f add UTF-16 stuff, and try to re-use as much code as possible. 2021-07-06 13:23:10 +02:00