comparison util/interpolation.lua @ 11064:af1e3b7d9ea3

util.interpolation: Add '~' as the opposite of '&' (render sub-block if falsy) One more magic character consumed!
author Matthew Wild <mwild1@gmail.com>
date Wed, 09 Sep 2020 17:10:33 +0100
parents 3852fc91b2fc
children f2e276bb4ef8
comparison
equal deleted inserted replaced
11062:dd3b1b9d867d 11064:af1e3b7d9ea3
62 end 62 end
63 return t_concat(out); 63 return t_concat(out);
64 elseif opt == '&' then 64 elseif opt == '&' then
65 if not value then return ""; end 65 if not value then return ""; end
66 return render(s_sub(block, e), values); 66 return render(s_sub(block, e), values);
67 elseif opt == '~' then
68 if value then return ""; end
69 return render(s_sub(block, e), values);
67 elseif opt == '?' and not value then 70 elseif opt == '?' and not value then
68 return render(s_sub(block, e), values); 71 return render(s_sub(block, e), values);
69 elseif value ~= nil then 72 elseif value ~= nil then
70 if type(value) ~= "string" then 73 if type(value) ~= "string" then
71 value = tostring(value); 74 value = tostring(value);