Commit Graph

1319 Commits (2286235786a7b6aea975d7e82f8e8d35c2295fb2)

Author SHA1 Message Date
Daniel Kolesa 827aed2bb9 minor fixes 2018-01-15 21:05:58 +01:00
Daniel Kolesa 69d5d11da1 POD => trivial, also clarify tstrlen 2018-01-13 22:34:14 +01:00
Daniel Kolesa dab034d9e0 export dem symbols 2018-01-11 23:38:03 +01:00
Daniel Kolesa a93ae710d0 universal internal strlen for all char types 2018-01-11 23:27:45 +01:00
Daniel Kolesa 375c014f7a vtable translation unit for thread pool + warns 2018-01-10 02:57:29 +01:00
Daniel Kolesa 1f5e7dc193 fully expand constructors in argparse 2018-01-10 02:30:01 +01:00
Daniel Kolesa 6c21802041 no global constructor in concurrency example 2018-01-10 01:03:07 +01:00
Daniel Kolesa 5646f8610b no need for a generic param 2018-01-10 00:55:50 +01:00
Daniel Kolesa 391f511131 use size_t for chunks/take 2018-01-10 00:54:31 +01:00
Daniel Kolesa e792613792 suppress some signed conversion warnings 2018-01-10 00:40:12 +01:00
Daniel Kolesa 64843f7aa7 get rid of remaining zero-as-null-pointer-constant usages 2018-01-10 00:34:42 +01:00
Daniel Kolesa d7d3929226 refactor expression SFINAE tests not to use pointers 2018-01-10 00:22:09 +01:00
Daniel Kolesa b077b4fad9 respect width/precision 2018-01-08 00:46:09 +01:00
Daniel Kolesa d47aa75bd3 fix utf-16 string printing 2018-01-08 00:44:57 +01:00
Daniel Kolesa cbc75ce97c fix 4-byte utf-8 encode 2018-01-08 00:27:55 +01:00
Daniel Kolesa 7becc47143 use the standard trait to check for chars 2018-01-07 22:54:02 +01:00
Daniel Kolesa 96f627f792 treat chars as ints when not %s/%c and %x/%X/etc as unsigned 2018-01-07 22:53:02 +01:00
Daniel Kolesa 36b5316ff6 documentation for all the Unicode APIs 2018-01-07 22:15:34 +01:00
Daniel Kolesa 229b715d2c add a standard function to write a replacement character 2018-01-07 21:20:57 +01:00
Daniel Kolesa 032d687293 avoid some size checks on utf-32 range 2018-01-07 21:14:59 +01:00
Daniel Kolesa 3db863c68d allow encode to work on arbitrary ranges 2018-01-07 19:38:47 +01:00
Daniel Kolesa 818fd1e8e8 add utf::unit_bits and encode/iter_u taking number of bits (8/16/32) 2018-01-07 19:27:08 +01:00
Daniel Kolesa 798fcec6c8 remove the iter_u* wrappers, leave iter_u 2018-01-07 19:16:13 +01:00
Daniel Kolesa fb91f77eb0 remove the encode_u* wrappers (just use generic type-basedd ver) 2018-01-07 19:08:08 +01:00
Daniel Kolesa 4a2e5cd557 completely unify encode funcs 2018-01-07 18:44:12 +01:00
Daniel Kolesa 541fa43cbb reduce the encode_u* to 1 sink version per variant 2018-01-07 18:22:30 +01:00
Daniel Kolesa 24d1b5ec25 various traits and constants for unicode types 2018-01-07 17:13:53 +01:00
Daniel Kolesa be803bac7b remove sink-based decode (covered by encode_u32) 2018-01-07 16:37:45 +01:00
Daniel Kolesa 640a9714f0 universal templated encode, iter for all types 2018-01-07 02:17:05 +01:00
Daniel Kolesa 4343bb408d implement compare/case_compare for all slice types 2018-01-07 01:15:17 +01:00
Daniel Kolesa 92cfe0aaf5 iter_codes -> iter_u32, iter_bytes -> iter_u8 2018-01-06 02:10:38 +01:00
Daniel Kolesa d94e75cd18 add by-utf8-byte iteration for all slice types 2018-01-06 02:00:56 +01:00
Daniel Kolesa 4a992d64b5 move back to sane string range comparison operator defs 2018-01-06 01:17:18 +01:00
Daniel Kolesa 7912e699d5 remove char_traits usage 2018-01-06 01:08:19 +01:00
Daniel Kolesa e3362e6c9e allow encoding of noncharacters 2018-01-06 01:03:43 +01:00
Daniel Kolesa fa5ae71202 perform validity check when decoding utf-32 into itself 2018-01-06 00:52:50 +01:00
Daniel Kolesa ed82fa0233 unified length handling for all encodings 2018-01-06 00:42:14 +01:00
Daniel Kolesa aeb5023b30 relax the rules of zero-argument utf::length 2018-01-06 00:27:04 +01:00
Daniel Kolesa e5162233d4 add missing inline 2018-01-06 00:17:47 +01:00
Daniel Kolesa 51d7a62bee eliminate -Wweak-vtables warnings 2018-01-05 22:48:38 +01:00
Daniel Kolesa 770ed476ca sink-writing decode 2018-01-05 22:16:18 +01:00
Daniel Kolesa 58ccfbe276 direct encoding funcs to u8/u16/uw from any other UTF 2018-01-05 21:49:00 +01:00
Daniel Kolesa daea42666e add range-based advancing encode funcs 2018-01-05 21:16:46 +01:00
Daniel Kolesa 61ed0ce71f printing of utf-16 and wide strings in format 2018-01-05 20:02:14 +01:00
Daniel Kolesa 200919d96f add funcs to deal with decoding/encoding of wchar_t values/sequences 2018-01-05 19:26:30 +01:00
Daniel Kolesa be25d42660 refactor unicode impl 2018-01-05 18:55:34 +01:00
Daniel Kolesa 44854072f7 prevent usage on potential broken platforms/toolchains 2018-01-05 03:05:17 +01:00
Daniel Kolesa d74736d8f4 add utf-16 decoding/encoding support 2018-01-05 02:18:36 +01:00
Daniel Kolesa 723c06c612 various warning fixes with -Weverything 2018-01-03 17:13:38 +01:00
Daniel Kolesa 2cbcc85fa8 add newlines between is-to funcs 2018-01-03 02:16:22 +01:00