为什么ruby不支持包含运算符的符号?
我的问题是为什么ruby不支持包含运算符的符号(它背后的想法是什么) 榜样为什么ruby不支持包含运算符的符号?,ruby,metaprogramming,Ruby,Metaprogramming,我的问题是为什么ruby不支持包含运算符的符号(它背后的想法是什么) 榜样 attr_accessor :active? 相反地 它支持 :@user 但不是 :user@ 我不明白你所说的“运算符”是什么意思,但你所有的例子显然都是有效的Symbols: :active? 'active?'.to_sym :'active?' 及 是完全有效的Symbols符号s甚至可以包含空格以及任何可以想象的Unicode字符: “我相信,你应该帮助解析器理解你::“user@”?@fl
attr_accessor :active?
相反地
它支持
:@user
但不是
:user@
我不明白你所说的“运算符”是什么意思,但你所有的例子显然都是有效的
Symbol
s:
:active?
'active?'.to_sym
:'active?'
及
是完全有效的Symbol
s<代码>符号s甚至可以包含空格以及任何可以想象的Unicode字符:
“我相信,你应该帮助解析器理解你::“user@”
?@fl00r,没关系,但是你能简要解释一下上面的内容,以及我可以理解解析器的资源吗?Sachin,如果你想详细了解Ruby的解析器是如何工作的,以及更一般地说,引擎盖下发生了什么(又名bonnet),我可以推荐。是的。那本书是专门为Ruby internalsdoes写的:'active'看起来更好,还是:active?这和这个问题有什么关系?
'user@'.to_sym
:'user@'