We can optimize case/when dispatch of === for core types when we know that the method has not been redefined. This one came along back in Ruby 2.3: ruby/ruby@4ebab10
Relates to #9123 for checking the overrides. If we can eliminate the need for === deoptimization (pessimistically to support Regexp matches setting $~) we could see a large improvement in the performance of methods that contain case/when.
We can optimize case/when dispatch of
===for core types when we know that the method has not been redefined. This one came along back in Ruby 2.3: ruby/ruby@4ebab10Relates to #9123 for checking the overrides. If we can eliminate the need for
===deoptimization (pessimistically to support Regexp matches setting$~) we could see a large improvement in the performance of methods that contain case/when.