[ruby-core:105093] [CommonRuby Feature#16817] attr_predicate or attr_query or attr_something for ? methods
From:
"sambostock (Sam Bostock)" <noreply@...>
Date:
2021-08-30 19:50:43 UTC
List:
ruby-core #105093
Issue #16817 has been updated by sambostock (Sam Bostock). > `attr_predicate :cat` would define a method named `:cat?` that returned the value for ivar `@cat`. I think it would make sense for the predicate method to convert the value to `true` or `false` before returning it, to make a clear distinction between a regular "getter" method, and a "predicate" method. ``` def cat? !!@cat end ``` ---------------------------------------- Feature #16817: attr_predicate or attr_query or attr_something for ? methods https://bugs.ruby-lang.org/issues/16817#change-93502 * Author: robotdana (Dana Sherson) * Status: Open * Priority: Normal ---------------------------------------- I would like `attr_predicate` like attr_reader etc. `attr_predicate :cat` would define a method named `:cat?` that returned the value for ivar `@cat`. I would like this because i find myself writing this: ``` def cat? @cat end ``` which is fine once, but becomes tedious with many attributes Another possibility is allowing `attr_reader :cat?` to define a method that returns the value for ivar `@cat`. currently it raises `NameError (invalid attribute name `cat?')` Thank you -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>