This is a Ruby tree! It shows every object from the Ruby Programming Language in a tree format.

sort

        # Array.sort

(from ruby core)
---
    array.sort -> new_array
    array.sort {|a, b| ... } -> new_array

---

Returns a new Array whose elements are those from `self`, sorted.

With no block, compares elements using operator `<=>` (see Comparable):
    a = 'abcde'.split('').shuffle
    a # => ["e", "b", "d", "a", "c"]
    a1 = a.sort
    a1 # => ["a", "b", "c", "d", "e"]

With a block, calls the block with each element pair; for each element
pair `a` and `b`, the block should return an integer:
*   Negative when `b` is to follow `a`.
*   Zero when `a` and `b` are equivalent.
*   Positive when `a` is to follow `b`.


Example:
    a = 'abcde'.split('').shuffle
    a # => ["e", "b", "d", "a", "c"]
    a1 = a.sort {|a, b| a <=> b }
    a1 # => ["a", "b", "c", "d", "e"]
    a2 = a.sort {|a, b| b <=> a }
    a2 # => ["e", "d", "c", "b", "a"]

When the block returns zero, the order for `a` and `b` is indeterminate,
and may be unstable:
    a = 'abcde'.split('').shuffle
    a # => ["e", "b", "d", "a", "c"]
    a1 = a.sort {|a, b| 0 }
    a1 # =>  ["c", "e", "b", "d", "a"]

Related: Enumerable#sort_by.



      

This is MURDOC! A Ruby documentation browser inspired by Smalltalk-80. It allows you to learn about Ruby by browsing through its class hierarchies, and see any of its methods.