From 84616bf9799f437806779e6cf73f00267f24808b Mon Sep 17 00:00:00 2001 From: sonots Date: Sat, 21 Oct 2017 23:49:35 +0000 Subject: * string.c: [DOC] Split rdoc of String#<< and String#concat [ci skip] Split String#<< and String#concat docs to reflect single and multiple arguments patched by MSP-Greg [fix GH-1614] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60328 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- string.c | 39 ++++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 15 deletions(-) (limited to 'string.c') diff --git a/string.c b/string.c index fb03a278d6..52c52ab0b7 100644 --- a/string.c +++ b/string.c @@ -2942,29 +2942,23 @@ rb_str_concat_literals(size_t num, const VALUE *strary) } /* - * Document-method: String#<< - * Document-method: String#concat - * * call-seq: - * str << integer -> str - * str.concat(integer1, integer2,...) -> str - * str << obj -> str * str.concat(obj1, obj2,...) -> str + * str.concat(integer1, integer2,...) -> str * - * Append---Concatenates the given object to str. If the object is an - * Integer, it is considered as a codepoint, and is converted - * to a character before concatenation. Concat can take multiple arguments. - * All the arguments are concatenated in order. + * Concatenates the given object(s) to str. If an object is an + * Integer, it is considered a codepoint and converted + * to a character before concatenation. + + * +concat+ can take multiple arguments, and all the arguments are concatenated + * in order. See String#<<, which takes a single argument. * * a = "hello " - * a << "world" #=> "hello world" - * a.concat(33) #=> "hello world!" - * a #=> "hello world!" + * a.concat("world", 33) #=> "hello world!" * * b = "sn" - * b.concat(b, b) #=> "snsnsn" + * b.concat("_", b, "_", b) #=> "sn_sn_sn" */ - static VALUE rb_str_concat_multi(int argc, VALUE *argv, VALUE str) { @@ -2986,6 +2980,21 @@ rb_str_concat_multi(int argc, VALUE *argv, VALUE str) return str; } + /* + * call-seq: + * str << obj -> str + * str << integer -> str + * + * Append the given object to str. If the object is an + * Integer, it is considered a codepoint and converted + * to a character before being appended. + * + * See String#concat, which takes multiple arguments. + * + * a = "hello " + * a << "world" #=> "hello world" + * a << 33 #=> "hello world!" + */ VALUE rb_str_concat(VALUE str1, VALUE str2) { -- cgit v1.2.3