Merge pull request #275 from dtoma/develop
Update hexify to use array lookup instead of ternary (#270)
diff --git a/src/json.hpp.re2c b/src/json.hpp.re2c
index 016ff0c..adc2e18 100644
--- a/src/json.hpp.re2c
+++ b/src/json.hpp.re2c
@@ -5959,9 +5959,11 @@
// (0..f)
const auto hexify = [](const int v) -> char
{
- return (v < 10)
- ? ('0' + static_cast<char>(v))
- : ('a' + static_cast<char>((v - 10) & 0x1f));
+ static const char hex[16] = { '0', '1', '2', '3',
+ '4', '5', '6', '7',
+ '8', '9', 'a', 'b',
+ 'c', 'd', 'e', 'f' };
+ return hex[v];
};
// print character c as \uxxxx