diff options
| author | Jack Nagel | 2014-04-03 11:19:57 -0500 |
|---|---|---|
| committer | Jack Nagel | 2014-04-03 11:19:57 -0500 |
| commit | 33c99123f2567eca6589e2a14d9de758edc7a32f (patch) | |
| tree | c800e373e060ae2d8de9352ea0e3d1bec7a1b4b2 | |
| parent | fab77a8cbd4c6c41b42dc3f6ead7ef397d0075a6 (diff) | |
| download | brew-33c99123f2567eca6589e2a14d9de758edc7a32f.tar.bz2 | |
Build the version scanner regexp once
| -rw-r--r-- | Library/Homebrew/version.rb | 20 |
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 |
