[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#50965: Allow nil third argument for mapconcat
From: |
Stefan Kangas |
Subject: |
bug#50965: Allow nil third argument for mapconcat |
Date: |
Sun, 3 Oct 2021 18:34:31 +0000 |
Eli Zaretskii <eliz@gnu.org> writes:
>> +Optional argument SEPARATOR must be a string, a vector, or a list of
>> +characters; nil is the empty string."
>
> nil is not a string, so saying that is not the best wording. I
> suggest "nil stands for an empty string." instead.
Yes, that's better. Fixed.
>> +(ert-deftest fns-tests-mapconcat ()
>> + (should (string= (mapconcat #'identity '() "_") ""))
>> + (should (string= (mapconcat #'identity '("A") "_") "A"))
>> + (should (string= (mapconcat #'identity '("A" "B") "_") "A_B"))
>> + (should (string= (mapconcat #'identity '("A" "B" "C") "_") "A_B_C"))
>> + (should (string= (mapconcat #'identity '("a" "b")) "ab")))
>
> Please be sure to test with vectors, bool-vectors, list of characters,
> and non-ASCII strings as well.
I've added such tests. Please check especially the bool-vector case,
as I was unsure about what exactly to test for. I put this:
(should (string= (mapconcat #'identity [nil nil] "") ""))
(should-error (mapconcat #'identity [nil nil t])
:type 'wrong-type-argument)
>> I'm assuming this should go to master at this point.
>
> Yes, thanks.
New patch attached.
0001-Make-mapconcat-argument-separator-optional.patch
Description: Text Data