From a1b8dac2542f7bc3d867f8d187fe7eb815b64331 Mon Sep 17 00:00:00 2001 From: Ivan Kuchin Date: Thu, 3 Sep 2020 22:44:04 +0200 Subject: [PATCH] Memoize _sorted_requirements and _tilde_requirements which can be used multiple times during same comparison --- lib/rubygems/requirement.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/rubygems/requirement.rb b/lib/rubygems/requirement.rb index 55a52d750d0a..430060e2ff58 100644 --- a/lib/rubygems/requirement.rb +++ b/lib/rubygems/requirement.rb @@ -283,11 +283,11 @@ def ==(other) # :nodoc: protected def _sorted_requirements - requirements.sort_by(&:to_s) + @_sorted_requirements ||= requirements.sort_by(&:to_s) end def _tilde_requirements - _sorted_requirements.select {|r| r.first == "~>" } + @_tilde_requirements ||= _sorted_requirements.select {|r| r.first == "~>" } end private