私は疑問に思っていました、、、、基本&&
コアand
の 変更不可能な機能(他の言語のように:php)、またはそれらはオブジェクトメソッドのようです が、魔法の方法で定義されています||
or
&
<=>
私の思考の特徴の詳細:
[] & [10]
# => []
[].&([10])
# => []
"aaa".& 10
# NoMethodError: undefined method `&' for "aaa":String
未定義のメソッドと言うことに注意してください
...もちろんできます。
true.& false
# => false
...しかし、あなたはできません:
true.&& false
# SyntaxError:
そうする可能性があるなら
class String
# monkey patch. If you googled this don't use this in real world, use ruby mixins insted
def &(right_side)
# do something meaningfull
right_side
end
end
"aaa".& 10
# => 10 # ta-da!
(魔法を使って)できることはありますか:
class String
# monkey patch. If you googled this don't use this in real world, use ruby mixins insted
def &&(right side)
# do something meaningfull
right side
end
end
# => SyntaxError: (irb):13: syntax error, unexpected keyword_end
どうも