[ruby-cvs:64495] normal:r57329 (trunk): mention behavior of Array#join for nested arrays [ci skip]

normal at ruby-lang.org normal at ruby-lang.org
Sun Jan 15 08:09:55 JST 2017


normal	2017-01-15 08:09:55 +0900 (Sun, 15 Jan 2017)

  New Revision: 57329

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=57329

  Log:
    mention behavior of Array#join for nested arrays [ci skip]
    
    The current documentation for Array#join does not mention the
    special treatment of nested arrays.
    
    It says:
    > Returns a string created by converting each element of the
    > array to a string, separated by the given separator.
    
    Expected behavior according to the docs would be:
    
        [ "a", [1, 2, [:x, :y]], "b" ].join("-")  #=> "a-[1, 2, [:x, :y]]-b"
        # because of:
        [1, 2, [:x, :y]].to_s  #=> "[1, 2, [:x, :y]]"
    
    Actual behavior:
    
        [ "a", [1, 2, [:x, :y]], "b" ].join("-")  #=> "a-1-2-x-y-b"
    
    because join is applied recursively for nested arrays.
    
    The patch clarifies this behavior.
    
    (Also: small markup and grammar fix.)
    
    Patch by Marcus Stollsteimer <sto.mar at web.de>
    
    [ruby-talk:437238] [ruby-core:79079] [Bug #13130]

  Modified files:
    trunk/array.c


More information about the ruby-cvs mailing list