diff options
| -rw-r--r-- | src/luarocks/fun.lua | 4 | ||||
| -rw-r--r-- | src/luarocks/fun.tl | 8 |
2 files changed, 6 insertions, 6 deletions
diff --git a/src/luarocks/fun.lua b/src/luarocks/fun.lua index b315711d..95f9177d 100644 --- a/src/luarocks/fun.lua +++ b/src/luarocks/fun.lua | |||
| @@ -48,9 +48,9 @@ function fun.traverse(t, f) | |||
| 48 | return fun.map(t, function(x) | 48 | return fun.map(t, function(x) |
| 49 | 49 | ||
| 50 | if type(x) == "table" then | 50 | if type(x) == "table" then |
| 51 | fun.traverse(x, f) | 51 | return fun.traverse(x, f) |
| 52 | else | 52 | else |
| 53 | f(x) | 53 | return f(x) |
| 54 | end | 54 | end |
| 55 | end) | 55 | end) |
| 56 | end | 56 | end |
diff --git a/src/luarocks/fun.tl b/src/luarocks/fun.tl index a63f0404..9d9551ed 100644 --- a/src/luarocks/fun.tl +++ b/src/luarocks/fun.tl | |||
| @@ -44,13 +44,13 @@ function fun.filter<K>(xs: {K}, f: function): {K} | |||
| 44 | return rs | 44 | return rs |
| 45 | end | 45 | end |
| 46 | 46 | ||
| 47 | function fun.traverse<K, V>(t: {K}, f: function(K): V): {V} --? right or {any} | any | 47 | function fun.traverse<K, V>(t: {K}, f: function(K): V): {V} | V --? right or {any} | any |
| 48 | return fun.map(t, function(x: K): V | 48 | return fun.map(t, function(x: K): {V} | V |
| 49 | -- return x is table and fun.traverse(x, f) or f(x) --? | 49 | -- return x is table and fun.traverse(x, f) or f(x) --? |
| 50 | if x is {any} then | 50 | if x is {any} then |
| 51 | fun.traverse(x, f) | 51 | return fun.traverse(x, f) |
| 52 | else | 52 | else |
| 53 | f(x) | 53 | return f(x) |
| 54 | end | 54 | end |
| 55 | end) | 55 | end) |
| 56 | end | 56 | end |
