diff options
-rw-r--r-- | src/luarocks/config.tl | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/luarocks/config.tl b/src/luarocks/config.tl index 019b3885..b1f9c52d 100644 --- a/src/luarocks/config.tl +++ b/src/luarocks/config.tl | |||
@@ -2,7 +2,7 @@ local config = {} | |||
2 | 2 | ||
3 | local persist = require("luarocks.persist") | 3 | local persist = require("luarocks.persist") |
4 | 4 | ||
5 | local cfg_skip = { | 5 | local cfg_skip: {string: boolean} = { |
6 | errorcodes = true, | 6 | errorcodes = true, |
7 | flags = true, | 7 | flags = true, |
8 | platforms = true, | 8 | platforms = true, |
@@ -10,26 +10,28 @@ local cfg_skip = { | |||
10 | upload_servers = true, | 10 | upload_servers = true, |
11 | } | 11 | } |
12 | 12 | ||
13 | function config.should_skip(k, v) | 13 | local type PersistableTable = require("luarocks.core.types.persist").PersistableTable |
14 | return type(v) == "function" or cfg_skip[k] | 14 | |
15 | function config.should_skip(k: string, v: any): boolean | ||
16 | return v is function or cfg_skip[k] | ||
15 | end | 17 | end |
16 | 18 | ||
17 | local function cleanup(tbl) | 19 | local function cleanup(tbl: PersistableTable): PersistableTable |
18 | local copy = {} | 20 | local copy = {} |
19 | for k, v in pairs(tbl) do | 21 | for k, v in pairs(tbl) do |
20 | if not config.should_skip(k, v) then | 22 | if not (k is string and config.should_skip(k, v)) then |
21 | copy[k] = v | 23 | copy[k] = v |
22 | end | 24 | end |
23 | end | 25 | end |
24 | return copy | 26 | return copy |
25 | end | 27 | end |
26 | 28 | ||
27 | function config.get_config_for_display(cfg) | 29 | function config.get_config_for_display(cfg: PersistableTable): PersistableTable |
28 | return cleanup(cfg) | 30 | return cleanup(cfg) |
29 | end | 31 | end |
30 | 32 | ||
31 | function config.to_string(cfg) | 33 | function config.to_string(cfg: PersistableTable): string, string |
32 | local cleancfg = config.get_config_for_display(cfg) | 34 | local cleancfg: PersistableTable = config.get_config_for_display(cfg) |
33 | return persist.save_from_table_to_string(cleancfg) | 35 | return persist.save_from_table_to_string(cleancfg) |
34 | end | 36 | end |
35 | 37 | ||