定义自定义Ruby运算符

前端之家收集整理的这篇文章主要介绍了定义自定义Ruby运算符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
问题是:我可以在Ruby中定义自己的自定义运算符,除了在中找到的运算符
Operator Expressions”?

例如:1%! 2

解决方法

是的,虽然有一些警告,但可以创建自定义运算符. Ruby本身并不直接支持它,但 superators gem在将操作符链接在一起时做了一个聪明的技巧.这允许您创建自己的运算符,但有一些限制:
$gem install superators19

然后:

require 'superators19'

class Array
  superator "%~" do |operand|
    "#{self} percent-tilde #{operand}"
  end
end

puts [1] %~ [2]
# Outputs: [1] percent-tilde [2]

由于上述限制,我无法做到1%! 2例子. Documentation有完整的细节,但Fixnums不能给一个superator,并且!不能在一个superator.

猜你在找的Ruby相关文章