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

minmax

        # Range.minmax

(from ruby core)
---
    minmax -> [object, object]
    minmax {|a, b| ... } -> [object, object]

---

Returns a 2-element array containing the minimum and maximum value in
`self`, either according to comparison method `<=>` or a given block.

With no block given, returns the minimum and maximum values, using `<=>`
for comparison:

    (1..4).minmax     # => [1, 4]
    (1...4).minmax    # => [1, 3]
    ('a'..'d').minmax # => ["a", "d"]
    (-4..-1).minmax   # => [-4, -1]

With a block given, the block must return an integer:

*   Negative if `a` is smaller than `b`.
*   Zero if `a` and `b` are equal.
*   Positive if `a` is larger than `b`.


The block is called `self.size` times to compare elements; returns a
2-element Array containing the minimum and maximum values from `self`,
per the block:

    (1..4).minmax {|a, b| -(a <=> b) } # => [4, 1]

Returns `[nil, nil]` if:

*   The begin value of the range is larger than the end value:

        (4..1).minmax                      # => [nil, nil]
        (4..1).minmax {|a, b| -(a <=> b) } # => [nil, nil]

*   The begin value of an exclusive range is equal to the end value:

        (1...1).minmax                          # => [nil, nil]
        (1...1).minmax  {|a, b| -(a <=> b) }    # => [nil, nil]


Raises an exception if `self` is a beginless or an endless range.

Related: Range#min, Range#max.



      

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.