From e7849b0b25390a96881d1f8affd1eadab4e9de62 Mon Sep 17 00:00:00 2001 From: Yorick Peterse Date: Thu, 24 Mar 2016 16:41:48 +0100 Subject: Memoize reference_pattern/link_reference_pattern These methods are called quite often in loops so by memoizing their output we can reduce timings a bit. --- app/models/commit.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'app/models/commit.rb') diff --git a/app/models/commit.rb b/app/models/commit.rb index d0dbe009d0d..d09876a07d9 100644 --- a/app/models/commit.rb +++ b/app/models/commit.rb @@ -74,14 +74,14 @@ class Commit # # This pattern supports cross-project references. def self.reference_pattern - %r{ + @reference_pattern ||= %r{ (?:#{Project.reference_pattern}#{reference_prefix})? (?\h{7,40}) }x end def self.link_reference_pattern - super("commit", /(?\h{7,40})/) + @link_reference_pattern ||= super("commit", /(?\h{7,40})/) end def to_reference(from_project = nil) -- cgit v1.2.1