Issue #7849 has been updated by Student (Nathan Zook).


Bad idea.  to_str should only be defined on things that really are Strings, and Symbol are most definitely not Strings.

I agree that Symbol is unusually close to String.  If, for your needs, you were to define to_st on String & on Symbol, you could have the utility you desire.

----------------------------------------
Feature #7849: Symbol#to_str
https://bugs.ruby-lang.org/issues/7849#change-36257

Author: trans (Thomas Sawyer)
Status: Open
Priority: Normal
Assignee: 
Category: core
Target version: next minor


Even though a Symbol is not technically an honest-to-goodness String, from the standpoint of simple practicality it would help to have Symbol#to_str defined.

There are times when we want an argument to accept a String or a Symbol, but don't really want it to accept any type of object under the sun that responds to #to_s --which is just about anything. This is especially the case when writing DSLs. Having Symbol#to_str is the nice solution to this.

Defining Symbol#to_str may be an exception to the rule, but it's one worth making.



-- 
http://bugs.ruby-lang.org/