Commit Graph

70 Commits

Author SHA1 Message Date
Martchus b48b2f5c06 Have everything in one top-level namespace 2019-06-10 21:56:46 +02:00
Martchus 54aaad49a3 Use std::forward in argsToString() 2019-05-11 19:19:59 +02:00
Martchus eef6cd2f9e Use constexpr or inline in stringbuilder where possible 2019-05-11 19:10:36 +02:00
Martchus 9a50d2b8df Remove types 2019-04-13 20:33:39 +02:00
Martchus f40a800107 Remove USE_NOTHROW and make ConversionException inline 2019-04-13 20:33:39 +02:00
Martchus 264a349751 Remove widen.h, use iconv based string conversion instead 2019-04-13 20:33:39 +02:00
Martchus 41fa627ef4 Apply tidy 2019-03-11 17:47:17 +01:00
Martchus 7452d44e64 Prevent formatting bitrate as "-NaN GiB/s" 2019-03-10 16:26:23 +01:00
Martchus a0dff23c26 Remove extra handling for big endian
The detection for big endian seems to work. But the special
handling for big endian is wrong. Only without it tests pass
under ppc64. Tested with Tumbleweed ppc64 image ran within
qemu-system-ppc64.
2019-01-12 04:53:05 +01:00
Martchus fe4d2b5778 Improve readability of endianness detection 2018-12-29 23:48:01 +01:00
Martchus 8e32fc0229 Apply clang-format 2018-10-06 16:18:53 +02:00
Martchus 5356d793fc Make all tests pass under Windows
* Workaround some issues
* Disable some tests (better than not running tests
  at all)
2018-10-03 22:37:55 +02:00
Martchus 8e3c40abb5 Make conversion from multi byte to wide string generic 2018-10-03 21:26:41 +02:00
Martchus 3a14d39a14 Add conversion from const char* to float/double
Previously only conversion from std::string to float/double
was possible.
2018-09-22 16:47:44 +02:00
Martchus a6eefc3ab6 Fix documentation of string conversion functions 2018-09-22 16:46:48 +02:00
Martchus 651720552e Replace typedef's with using
* Except in code which will be discarded in v5 anyways
* Should not affect source and binary compatibility
2018-09-22 16:41:33 +02:00
Marius Kittler 7e4d9a6c59 Add missing header to fix compilation with GCC 4.9 2018-07-13 13:54:53 +02:00
Martchus 97aac2424a Reduce block-nesting in joinStrings() 2018-07-01 23:21:06 +02:00
Martchus 52734ebf51 Make use of thread_local optional
Because it doesn't seem to be implemented for
apple-darwin targets.
2018-06-03 22:14:22 +02:00
Martchus a21ed51505 Improve coding style in toFloat{32,64}() functions
* Use const
* Don't duplicate BE/LE branches
2018-05-31 22:45:45 +02:00
Martchus d174f3f157 Make toInt() functions constexpr 2018-05-31 22:43:35 +02:00
Martchus 7125e52e87 Make error messages in stringconversion.h more verbose 2018-05-31 22:28:38 +02:00
Martchus f4920abebc Fix thread-safety of character set conversion functions 2018-05-31 01:24:04 +02:00
Martchus 5bc2ca87e0 Don't use size factor for conversion from UTF-8 to Latin-1 2018-05-31 01:19:56 +02:00
Martchus d9f2ad7260 Fix warnings in character set conversion functions 2018-05-31 01:19:34 +02:00
Martchus 1aa8b387e1 Apply clang-format 2018-05-08 00:35:51 +02:00
Martchus a4435bbcf3 Fix usage of enable_if with GCC 8
Seems like the trick with the three dots isn't working
with GCC 8 anymore. So let's make it a default template
parameter then.

Not sure whether GCC 8 is here correct and whether this
workaround causes further trouble.
2018-05-07 23:22:43 +02:00
Martchus df7a3ee93c Apply clang-format from LLVM 6 2018-03-24 17:00:30 +01:00
Martchus 7b974a1b1d Add 'const char *' overload to ConversionException 2018-03-11 22:36:59 +01:00
Martchus da5a027ea3 Add simplified, string_view-compatible version of splitString() 2018-02-28 18:03:07 +01:00
Martchus 6a1280ba8a Fix warning about implicit conversion 2018-01-31 21:00:13 +01:00
Martchus a0c6868e88 Add conversion methods: multiline str <=> array of lines 2017-10-23 01:09:59 +02:00
Martchus e52fd5a4af Apply tidy after updating to clang-format 5.0.0
The behavior of clang-format slightly changed in Clang 5.0.0:
http://releases.llvm.org/5.0.0/tools/clang/docs/ReleaseNotes.html#clang-format
2017-09-17 21:45:23 +02:00
Martchus 22c8e636dc Write digitToChar() in a more compact way 2017-06-29 18:24:11 +02:00
Martchus 28f37bbbcd string to int: Allow specifying string size 2017-06-08 00:41:29 +02:00
Martchus 045c713cf5 string to int: Ignore whitespaces at beginning 2017-06-08 00:39:54 +02:00
Martchus 06f401b393 Prevent warning in swapOrder(uint16 value) 2017-06-03 17:16:52 +02:00
Martchus db46948f2f Apply clang-format 2017-05-04 22:44:15 +02:00
Martchus 59e20b1043 Apply clang-format 2017-05-01 03:13:11 +02:00
Martchus 787d541974 Fix conversion of 0 to string
Return "0" instead of an empty string
2017-03-07 00:28:46 +01:00
Martchus 06af1c4a73 Use std::make_unique provided by C++14 2017-02-05 21:00:52 +01:00
Martchus 94a6b47811 Improve documentation 2017-02-03 00:54:44 +01:00
Martchus 1ace53533a string builder: Remove unused code 2017-01-30 00:40:31 +01:00
Martchus 17fe42e0ad string builder: Support integral types directly
Not only convenient but also performance improvement
2017-01-30 00:11:33 +01:00
Martchus 5c004015ce string builder: Fix ambiguity issues 2017-01-27 18:50:51 +01:00
Martchus a772cdf30b Add conveniently usable string builder
which allows fast string building without multiple heap allocations
2017-01-26 22:16:18 +01:00
Martchus cab332bcad Refactor reading arguments
Replace ArgumentParser::readSpecifiedArgs() with
ArgumentReader class to simplify argument list
2016-12-23 22:40:33 +01:00
Martchus c1e18fcbf5 Fix compilation on Cygwin 2016-11-18 16:41:46 +01:00
Martchus 2be349856f Make numberToString/stringToNumber work with u16string
Don't rely on std::basic_stringstream at least for
integral types.
2016-11-13 23:06:03 +01:00
Martchus d6b08b8ed9 Fix decoration for static builds
- Also add improvemnts a few other things in the build system
2016-08-29 15:35:48 +02:00