Add asymptome.lua
some util functions
This commit is contained in:
@@ -0,0 +1,30 @@
|
|||||||
|
#!/usr/bin/env luajit
|
||||||
|
local json = require "lib.dkjson"
|
||||||
|
math.randomseed(os.time())
|
||||||
|
|
||||||
|
local load_json = function(file_name)
|
||||||
|
local file, error_message = io.open(file_name, "r")
|
||||||
|
assert(file, error_message)
|
||||||
|
local result = json.decode(file:read("*all"))
|
||||||
|
file:close()
|
||||||
|
return result
|
||||||
|
end
|
||||||
|
|
||||||
|
local save_json = function(file_name, data)
|
||||||
|
local file, error_message = io.open(file_name, "w")
|
||||||
|
assert(file, error_message)
|
||||||
|
file:write(json.encode(data, { indent = true, }))
|
||||||
|
file:write("\n")
|
||||||
|
file:close()
|
||||||
|
end
|
||||||
|
|
||||||
|
local random_order = function(array)
|
||||||
|
local temporary, order = {}, {}
|
||||||
|
for i = 1, #array do
|
||||||
|
temporary[i] = i
|
||||||
|
end
|
||||||
|
while next(temporary) do
|
||||||
|
order[#order + 1] = table.remove(temporary, math.random(1, #temporary))
|
||||||
|
end
|
||||||
|
return order
|
||||||
|
end
|
||||||
Reference in New Issue
Block a user