Symbolify saved alias name to improve performance.

This commit is contained in:
Yukihiro "Matz" Matsumoto
2020-06-20 12:07:49 +09:00
parent dad99afae8
commit 2ffb77586a
2 changed files with 2 additions and 4 deletions
+1 -1
View File
@@ -107,7 +107,7 @@ class Complex < Numeric
[Fixnum, Float].each do |cls|
[:+, :-, :*, :/, :==].each do |op|
cls.instance_eval do
original_operator_name = "__original_operator_#{op}_complex"
original_operator_name = :"__original_operator_#{op}_complex"
alias_method original_operator_name, op
define_method op do |rhs|
if rhs.is_a? Complex
+1 -3
View File
@@ -91,8 +91,8 @@ module Kernel
end
[:+, :-, :*, :/, :<=>, :==, :<, :<=, :>, :>=].each do |op|
original_operator_name = :"__original_operator_#{op}_rational"
Fixnum.instance_eval do
original_operator_name = "__original_operator_#{op}_rational"
alias_method original_operator_name, op
define_method op do |rhs|
if rhs.is_a? Rational
@@ -103,7 +103,6 @@ module Kernel
end
end
Float.instance_eval do
original_operator_name = "__original_operator_#{op}_rational"
alias_method original_operator_name, op
define_method op do |rhs|
if rhs.is_a? Rational
@@ -114,4 +113,3 @@ module Kernel
end if Object.const_defined?(:Float)
end
end