From: s@... Date: 2016-02-09T15:41:09+00:00 Subject: [ruby-core:73749] [Ruby trunk Feature#12059] `Array#single?`, `Hash#single?` Issue #12059 has been updated by Prem Sichanugrist. I feel like the usage of this method wouldn't be generic enough, and could be accomplished easily by `.size.one?` ---------------------------------------- Feature #12059: `Array#single?`, `Hash#single?` https://bugs.ruby-lang.org/issues/12059#change-56935 * Author: Tsuyoshi Sawada * Status: Open * Priority: Normal * Assignee: ---------------------------------------- There are some use cases when one wants to check if an array or a hash has exactly one element. I propose `Array#single?` and `Hash#single?` that checks for such cases and returns either `true` or `false`. This is an analogy from the `empty?` method on the respective class. * When creating an inflectional form out of an array: ~~~ruby a = ["object1", "object2"] "There #{a.single ? "is" : "are"} #{a.length} #{a.single? ? "object" : "objects"}." # => "There are 2 objects." ~~~ * When checking if all elements of the array are the same: ~~~ruby [1, 2, 2, 1].uniq.single? # => false [1, 1, 1, 1].uniq.single? # => true ~~~ -- https://bugs.ruby-lang.org/ Unsubscribe: