Actions
Bug #10086
closed[PATCH] Remove exponents calculation from mathn.rb
Description
#English
When we override :**
, we make it alias as :power!
(mathn.rb:L73, L102)
Like this.
alias power! ** unless method_defined? :power!
If user have define :power!
, this :power!
is called unintentionally.(mathn.rb:L82, L111)
def ** (other)
if self < 0 && other.round != other
Complex(self, 0.0) ** other
else
power!(other)
end
end
Now that we can do such a exponents calculation without mathn
, we don't need exetend :**
in mathn.
That's why I remove :**
from mathn.rb
#日本語
mathn.rb で :**
を上書きする際に元の :**
を :power!
としてaliasを貼っていますが、(mathn.rb:L73, L102)
alias power! ** unless method_defined? :power!
使用者が #power!
を定義していた場合、
(mathn.rb:L82, L111)
def ** (other)
if self < 0 && other.round != other
Complex(self, 0.0) ** other
else
power!(other)
end
end
の部分で意図せず利用者が定義した:power!
が呼ばれ可能性があるため、
またそもそもこの種の冪乗演算は mathn
を必要とせずとも現在は実現されているため、
:** を mathn
から削除致しました.
Files
Actions
Like0
Like0Like0Like0Like0Like0Like0Like0