Is there a list anywhere of all ruby operators that can be overridden? (Not the ones that can't!)
(::) Scope resolution operator cannot be overloaded in C language.
Ruby permits operator overloading, allowing one to define how an operator shall be used in a particular program. For example a '+' operator can be define in such a way to perform subtraction instead addition and vice versa.
Here's a table of the Ruby operators.
The ones that are methods and overloadable are:
[ ] [ ]= Element reference, element set ** Exponentiation ! ~ + - Not, complement, unary plus and minus (method names for the last two are +@ and -@) * / % Multiply, divide, and modulo + - Plus and minus >> << Right and left shift & Bitwise `and' ^ | Bitwise exclusive `or' and regular `or' <= < > >= Comparison operators <=> == === != =~ !~ Equality and pattern match operators (!= and !~ may not be defined as methods)
The table was from the 2001 Pickaxe book, but that's the same table as in the Ruby 1.9 Pickaxe book -- no reason to believe that this set of infix operators will ever change.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With