This is a Ruby tree! It shows every object from the Ruby Programming Language in a tree format.
# 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.