aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.lua
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-08-17 13:41:43 +0800
committerzeertzjq <zeertzjq@outlook.com>2023-08-17 15:20:47 +0800
commitc5576fcc8003280489c0aa0323a966e6de33e31f (patch)
tree85b5fb71ed9e7c5d28a0491e7ded93c63eecfb10 /src/nvim/eval.lua
parent7f51829cf75e0d3ca546cab0e70a4c089eac40ec (diff)
downloadrneovim-c5576fcc8003280489c0aa0323a966e6de33e31f.tar.gz
rneovim-c5576fcc8003280489c0aa0323a966e6de33e31f.tar.bz2
rneovim-c5576fcc8003280489c0aa0323a966e6de33e31f.zip
vim-patch:8.2.3848: cannot use reduce() for a string
Problem: Cannot use reduce() for a string. Solution: Make reduce() work with a string. (Naruhiko Nishino, closes vim/vim#9366) https://github.com/vim/vim/commit/0ccb5842f5fb103763d106c7aa364d758343c35a Omit tv_get_first_char() as it doesn't really save much code. Co-authored-by: rbtnn <naru123456789@gmail.com>
Diffstat (limited to 'src/nvim/eval.lua')
-rw-r--r--src/nvim/eval.lua7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/nvim/eval.lua b/src/nvim/eval.lua
index 4dbd63d131..62d97a2931 100644
--- a/src/nvim/eval.lua
+++ b/src/nvim/eval.lua
@@ -7876,9 +7876,9 @@ M.funcs = {
tags = { 'E998' },
desc = [=[
{func} is called for every item in {object}, which can be a
- |List| or a |Blob|. {func} is called with two arguments: the
- result so far and current item. After processing all items
- the result is returned.
+ |String|, |List| or a |Blob|. {func} is called with two arguments:
+ the result so far and current item. After processing all
+ items the result is returned.
{initial} is the initial result. When omitted, the first item
in {object} is used and {func} is first called for the second
@@ -7889,6 +7889,7 @@ M.funcs = {
echo reduce([1, 3, 5], { acc, val -> acc + val })
echo reduce(['x', 'y'], { acc, val -> acc .. val }, 'a')
echo reduce(0z1122, { acc, val -> 2 * acc + val })
+ echo reduce('xyz', { acc, val -> acc .. ',' .. val })
<
]=],
name = 'reduce',