Project

General

Profile

Feature #10720

A proposal for something like: attr_reader :foo? - with the trailing '?' question mark

Added by shevegen (Robert A. Heiler) over 4 years ago. Updated over 3 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Target version:
-
[ruby-core:67450]

Description

Hi guys,

Sorry to burden you with another suggestion, no problem
if it is not accepted, I wanted to just make it. :-)

We have a way to define reader methods easily, such
as in:

attr_reader :foo

This should be equivalent to:

def foo
  @foo
end

I love query methods ending with ?, so I often also use
something like:

def foo?
  @foo
end

What if there is a programmatic way to define these?

For instance, like:

attr_reader? :foo

This might lead to confusion perhaps, so a way such as:

attr_question :foo

or

attr_query :foo

or perhaps even better

attr_reader :foo?

The latter variant does not work:

foo.rb:20:in `attr_reader': invalid attribute name `foo?' (NameError)

Perhaps :foo? could query the instance variable @foo
instead here? Currently attr_reader :foo? is invalid
but :foo? is a valid Symbol in itself.

At any rate, thanks for reading, may the year 2015 be
great for all ruby devs and ruby users!


Related issues

Has duplicate Ruby trunk - Feature #11167: Allow an attr_ variant for query-methods that end with a question mark '?' character, such as: def foo? returning @fooRejectedActions
Has duplicate Ruby trunk - Feature #12046: Allow attr_reader :foo? to define instance method foo? for accessing @fooRejectedActions

History

#1

Updated by nobu (Nobuyoshi Nakada) about 4 years ago

  • Has duplicate Feature #11167: Allow an attr_ variant for query-methods that end with a question mark '?' character, such as: def foo? returning @foo added
#2

Updated by nobu (Nobuyoshi Nakada) over 3 years ago

  • Has duplicate Feature #12046: Allow attr_reader :foo? to define instance method foo? for accessing @foo added

Updated by matz (Yukihiro Matsumoto) over 3 years ago

  • Status changed from Open to Rejected

See #12046.

Matz.

Also available in: Atom PDF