| 🌟 | 現在、 鉄壁HSは通常HSと同じダメージになります。LMG及びDMR、チャージライフル、ハンマーポイント弾を除き、すべてのダメージ値が一致していることを確認しています。 |
「モジュール:TableExtensions」の版間の差分
ナビゲーションに移動
検索に移動
(tableの逆順化 reverse および逆順にしたtableを受け取る reversed の追加) |
(関数 mapKeys の追加) |
||
| 31行目: | 31行目: | ||
for key, value in pairs(tbl) do | for key, value in pairs(tbl) do | ||
ret[key] = fn(key, value) | ret[key] = fn(key, value) | ||
end | |||
return ret | |||
end | |||
function table.mapKeys(tbl, fn) | |||
local ret = {} | |||
for key, value in pairs(tbl) do | |||
ret[fn(key)] = value | |||
end | end | ||
return ret | return ret | ||
2021年8月21日 (土) 06:50時点における版
このモジュールについての説明文ページを モジュール:TableExtensions/doc に作成できます
function table.isEmpty(tbl)
return not next(tbl)
end
function table.keys(tbl)
local keyset = {}
for key, _ in pairs(tbl) do
keyset[#keyset + 1] = key
end
return keyset
end
function table.values(tbl)
local valueset = {}
for _, value in pairs(tbl) do
valueset[#valueset + 1] = value
end
return valueset
end
function table.entries(tbl)
local entryset = {}
for key, value in pairs(tbl) do
entryset[#entryset + 1] = { key, value }
end
return entryset
end
function table.map(tbl, fn)
local ret = {}
for key, value in pairs(tbl) do
ret[key] = fn(key, value)
end
return ret
end
function table.mapKeys(tbl, fn)
local ret = {}
for key, value in pairs(tbl) do
ret[fn(key)] = value
end
return ret
end
function table.mapValues(tbl, fn)
local ret = {}
for key, value in pairs(tbl) do
ret[key] = fn(value)
end
return ret
end
function table.filter(tbl, fn)
local ret = {}
for idx, value in ipairs(tbl) do
if fn(idx, value) then
ret[#ret + 1] = value
end
end
for key, value in pairs(tbl) do
if type(key) ~= 'number' and fn(key, value) then
ret[key] = value
end
end
return ret
end
function table.removeKey(tbl, key)
local element = tbl[key]
tbl[key] = nil
return element
end
function table.reverse(tbl)
local n = #tbl
local i = 1
while i < n do
tbl[i], tbl[n] = tbl[n], tbl[i]
i = i + 1
n = n - 1
end
end
function table.reversed(tbl)
local ret = {}
for i = #tbl, 1, -1 do
ret[#ret + 1] = tbl[i]
end
return ret
end
return table