在添加一些空格以使代码更具可读性(与上面的代码对齐)时,我遇到了这个:
class C
def x
42
end
end
m=C.new
Run Code Online (Sandbox Code Playgroud)
现在这将给出"错误的参数数量":
m.x *m.x
Run Code Online (Sandbox Code Playgroud)
这将给出"语法错误,意外的tSTAR,期待$ end":
2/m.x *m.x
Run Code Online (Sandbox Code Playgroud)
这里的解析器究竟发生了什么?
我测试了Ruby 1.9.2和2.1.5.