К сожалению, вы не можете сделать это.
Инфиксные операторы Ruby, такие как and
и or
, жестко запрограммированы как часть синтаксиса языка, поэтому вы не можете определить новые инфиксные операторы, такие какВы можете это сделать в Haskell или Kotlin.
Есть несколько странных, но интересных хаков , которые позволяют вам достигать похожих результатов, но ограничения парсера означают, что вы не можете делать точночто вы пытаетесь достичь.
В качестве альтернативы, вы можете просто вызвать foo
без скобок, что выглядит довольно похоже:
class_example_1.foo class_example_2
Или, поскольку вы уже перегруженылогические операторы, просто используйте их:
class_example_1 or class_example_2