Ruby Object #send vs negated equal

时间:2012-03-08 13:02:21

标签: ruby syntax ruby-1.8

为什么"A".send('!='.to_sym, "B")在Ruby 1.8.7中引发NoMethodError而"A" != "B"没有 - 以及Object.send的正确语法如何?

2 个答案:

答案 0 :(得分:5)

!=不是ruby 1.8中的一个方法它是硬连线的否定调用==

答案 1 :(得分:3)

由于问题的后半部分尚未得到解答:

'A'.send(:==, 'B').send(:!) # Ruby 1.9

!'A'.send(:==, 'B')         # Ruby 1.8