26 lines
625 B
Lua
26 lines
625 B
Lua
|
-- Return true if x is an integer
|
||
|
function is_integer(x)
|
||
|
return math.floor(x) == x
|
||
|
end
|
||
|
|
||
|
-- Convert a table into a Lean options object
|
||
|
function to_options(t, prefix, opts)
|
||
|
if opts == nil then opts = options() end
|
||
|
for k, v in pairs(t) do
|
||
|
if type(v) == "table" then
|
||
|
opts = to_options(v, name(prefix, k), opts)
|
||
|
else
|
||
|
opts = opts:update(name(prefix, k), v)
|
||
|
end
|
||
|
end
|
||
|
return opts
|
||
|
end
|
||
|
|
||
|
opts = options()
|
||
|
opts = opts:update(name('pp', 'colors'), false)
|
||
|
opts = opts:update(name('pp', 'colors'), true)
|
||
|
print(opts)
|
||
|
|
||
|
opts = to_options{pp={colors=true, width=10}}
|
||
|
print(opts)
|