Software /
code /
prosody
Diff
util/serialization.lua @ 9486:20aad0108999
util.serialization: Remove encoding of very large or very small numbers in scientific notation
Also difficult to describe this option, easier to remove it.
%.18g covers a very large range of numbers
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 12 Oct 2018 00:15:08 +0200 |
parent | 9485:c667887d78ad |
child | 9564:ed0090f8b709 |
line wrap: on
line diff
--- a/util/serialization.lua Fri Oct 12 00:13:24 2018 +0200 +++ b/util/serialization.lua Fri Oct 12 00:15:08 2018 +0200 @@ -20,11 +20,6 @@ local envload = require"util.envload".envload; local pos_inf, neg_inf = math.huge, -math.huge; -local m_log = math.log; -local m_log10 = math.log10 or function (n) - return m_log(n, 10); -end -local m_floor = math.floor; -- luacheck: ignore 143/math local m_type = math.type or function (n) return n % 1 == 0 and n <= 9007199254740992 and n >= -9007199254740992 and "integer" or "float"; @@ -124,7 +119,6 @@ local unquoted = opt.unquoted == nil and "^[%a_][%w_]*$" or opt.unquoted; local hex = opt.hex; local freeze = opt.freeze; - local precision = opt.precision or 10; -- serialize one table, recursively -- t - table being serialized @@ -237,12 +231,7 @@ elseif t ~= t then return "(0/0)"; end - local log = m_floor(m_log10(t)); - if log > precision then - return s_format("%.18e", t); - else - return s_format("%.18g", t); - end + return s_format("%.18g", t); end -- Are these faster than tostring?