correction table.slice & adding get_default
This commit is contained in:
parent
17ce49bdf1
commit
e106a31d82
@ -76,6 +76,12 @@ table.set_default(t: table, key: number | string, default: any) -> any | default
|
|||||||
|
|
||||||
Позволяет безопасно получать значение по указанному ключу. Если ключ существует в таблице, метод вернет его значение. Если ключ отсутствует, метод установит его со значением **default** и вернет его.
|
Позволяет безопасно получать значение по указанному ключу. Если ключ существует в таблице, метод вернет его значение. Если ключ отсутствует, метод установит его со значением **default** и вернет его.
|
||||||
|
|
||||||
|
```lua
|
||||||
|
table.get_default(t: table, key: number | string, default: any) -> any | default
|
||||||
|
```
|
||||||
|
|
||||||
|
Как и set аналог, позволяет безопасно получать значение по указанному ключу. Если ключ существует в таблице, метод вернет его значение. Если ключ отсутствует, метод вернёт значение **default** **без** установки нового значения в таблицу.
|
||||||
|
|
||||||
```lua
|
```lua
|
||||||
table.flat(t: table) -> table
|
table.flat(t: table) -> table
|
||||||
```
|
```
|
||||||
@ -89,7 +95,7 @@ table.deep_flat(t: table) -> table
|
|||||||
Возвращает глубокую "плоскую" версию исходной таблицы.
|
Возвращает глубокую "плоскую" версию исходной таблицы.
|
||||||
|
|
||||||
```lua
|
```lua
|
||||||
table.slice(arr: table, start: number | nil, stop: number | nil) -> table
|
table.sub(arr: table, start: number | nil, stop: number | nil) -> table
|
||||||
```
|
```
|
||||||
|
|
||||||
Возвращает обрезанную версию таблицы с индекса **start** до индекса **stop** включительно, при этом пары ключ-значение не сохраняются в новой таблице. При значениях **nil** начинает с **1** и заканчивает **#arr** соответственно.
|
Возвращает обрезанную версию таблицы с индекса **start** до индекса **stop** включительно, при этом пары ключ-значение не сохраняются в новой таблице. При значениях **nil** начинает с **1** и заканчивает **#arr** соответственно.
|
||||||
|
|||||||
@ -169,6 +169,14 @@ function table.set_default(t, key, default)
|
|||||||
return t[key]
|
return t[key]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function table.get_default(t, key, default)
|
||||||
|
if t[key] == nil then
|
||||||
|
return default
|
||||||
|
end
|
||||||
|
|
||||||
|
return t[key]
|
||||||
|
end
|
||||||
|
|
||||||
function table.flat(t)
|
function table.flat(t)
|
||||||
local flat = {}
|
local flat = {}
|
||||||
|
|
||||||
@ -197,17 +205,18 @@ function table.deep_flat(t)
|
|||||||
return flat
|
return flat
|
||||||
end
|
end
|
||||||
|
|
||||||
function table.slice(arr, start, stop)
|
function table.sub(arr, start, stop)
|
||||||
local sliced = {}
|
local res = {}
|
||||||
start = start or 1
|
start = start or 1
|
||||||
stop = stop or #arr
|
stop = stop or #arr
|
||||||
|
|
||||||
for i = start, stop do
|
for i = start, stop do
|
||||||
table.insert(sliced, arr[i])
|
table.insert(res, arr[i])
|
||||||
end
|
end
|
||||||
|
|
||||||
return sliced
|
return res
|
||||||
end
|
end
|
||||||
|
|
||||||
----------------------------------------------
|
----------------------------------------------
|
||||||
|
|
||||||
local pattern_escape_replacements = {
|
local pattern_escape_replacements = {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user