patch 8.1.0401: can't get swap name of another buffer

Problem:    Can't get swap name of another buffer.
Solution:   Add swapname(). (Ozaki Kiichi, closes #3441)
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index fff19da..a5c8a13 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -2417,6 +2417,7 @@
 substitute({expr}, {pat}, {sub}, {flags})
 				String	all {pat} in {expr} replaced with {sub}
 swapinfo({fname})		Dict	information about swap file {fname}
+swapname({expr})		String	swap file of buffer {expr}
 synID({lnum}, {col}, {trans})	Number	syntax ID at {lnum} and {col}
 synIDattr({synID}, {what} [, {mode}])
 				String	attribute {what} of syntax ID {synID}
@@ -8042,6 +8043,13 @@
 			Not a swap file: does not contain correct block ID
 			Magic number mismatch: Info in first block is invalid
 
+swapname({expr})					*swapname()*
+		The result is the swap file path of the buffer {expr}.
+		For the use of {expr}, see |bufname()| above.
+		If buffer {expr} is the current buffer, the result is equal to
+		|:swapname| (unless no swap file).
+		If buffer {expr} has no swap file, returns an empty string.
+
 synID({lnum}, {col}, {trans})				*synID()*
 		The result is a Number, which is the syntax ID at the position
 		{lnum} and {col} in the current window.