aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJack Nagel2014-04-03 11:19:57 -0500
committerJack Nagel2014-04-03 11:19:57 -0500
commit33c99123f2567eca6589e2a14d9de758edc7a32f (patch)
treec800e373e060ae2d8de9352ea0e3d1bec7a1b4b2
parentfab77a8cbd4c6c41b42dc3f6ead7ef397d0075a6 (diff)
downloadbrew-33c99123f2567eca6589e2a14d9de758edc7a32f.tar.bz2
Build the version scanner regexp once
-rw-r--r--Library/Homebrew/version.rb20
1 files changed, 10 insertions, 10 deletions
diff --git a/Library/Homebrew/version.rb b/Library/Homebrew/version.rb
index 159d3cb2a..2e0bc85a5 100644
--- a/Library/Homebrew/version.rb
+++ b/Library/Homebrew/version.rb
@@ -146,6 +146,15 @@ class Version
end
end
+ SCAN_PATTERN = Regexp.union(
+ AlphaToken::PATTERN,
+ BetaToken::PATTERN,
+ RCToken::PATTERN,
+ PatchToken::PATTERN,
+ NumericToken::PATTERN,
+ StringToken::PATTERN
+ )
+
def self.new_with_scheme(value, scheme)
if Class === scheme && scheme.ancestors.include?(Version)
scheme.new(value)
@@ -221,16 +230,7 @@ class Version
end
def tokenize
- @version.scan(
- Regexp.union(
- AlphaToken::PATTERN,
- BetaToken::PATTERN,
- RCToken::PATTERN,
- PatchToken::PATTERN,
- NumericToken::PATTERN,
- StringToken::PATTERN
- )
- ).map! do |token|
+ @version.scan(SCAN_PATTERN).map! do |token|
case token
when /\A#{AlphaToken::PATTERN}\z/o then AlphaToken
when /\A#{BetaToken::PATTERN}\z/o then BetaToken