# HG changeset patch # User Kim Alvefur # Date 1539296108 -7200 # Node ID 20aad01089998953bf4ca1411aacccdf48c92ec6 # Parent c667887d78ad89cb3a4cd643d112490909aff084 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 diff -r c667887d78ad -r 20aad0108999 util/serialization.lua --- 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?