T
thomas.macklin
I often find myself writing methods with the following form:
def foo(sym_or_str)
@iv = sym_or_str
end
when I go to compare later vs @iv, I can do:
def compare_vs_iv(arg)
if arg.to_s == @iv.to_s then
...
end
...
end
but I can't do:
if arg.intern == @iv.intern then
...
end
This is because symbols don't respond to intern. Is there any good
reason Symbol doesn't respond to intern, while String responds to
to_s, Array responds, to to_a, etc.? If not, I would like to propose
that the intern method be added to Symbol at some point.
Thoughts?
def foo(sym_or_str)
@iv = sym_or_str
end
when I go to compare later vs @iv, I can do:
def compare_vs_iv(arg)
if arg.to_s == @iv.to_s then
...
end
...
end
but I can't do:
if arg.intern == @iv.intern then
...
end
This is because symbols don't respond to intern. Is there any good
reason Symbol doesn't respond to intern, while String responds to
to_s, Array responds, to to_a, etc.? If not, I would like to propose
that the intern method be added to Symbol at some point.
Thoughts?