Project

General

Profile

Feature #19600

Updated by sawa (Tsuyoshi Sawada) about 1 year ago

Currently, we have pairs of non-predicate and predicate methods like `String#match` and `String#match?`. They are brain-friendly, and make programmers happier. Along this line, I propose the following. They are brain-friendly, and make programmers happier by saving them from terminology hell. following: 

 1. Since by #19588, `Comparable#clamp`'s behavior is made the same as `Range#cover?` for range arguments, alias `Range#cover?` as `Range#clamp?`. 
 2. Synchronize the specification of `Comparable#between?` with `Comparable#clamp`, i.e., 
   a. Allow `Comparable#between?` to take a range argument, arguments, and 
   b. Allow `Comparable#between?` to take `nil` as either or both of its arguments, or as either or both ends of its range argument. 
 3. Alias `Comparable#between?` as `Comparable#clamp?`

Back