Sha256: 2545d4e2e30aa7af98a7ba9497fa1ebb0ff26347eaf2df61b039d5a86fe334fc

Contents?: true

Size: 930 Bytes

Versions: 19

Compression:

Stored size: 930 Bytes

Contents

module Timewizard
  # Contains all utility modules and classes.
  # @since 0.2.4
  module Utils
    # Contains utility functions in a cleverly named module.
    # @author Richard Harrah
    # @since 0.2.4
    module Wizardry

      VERSION_REGEX = /((\d+\.)?(\d+\.)?(\*|\d+))(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?/

      # Returns a substring of the passed-in value that matches {Timewizard::Utils::Wizardry::VERSION_REGEX the version regex}.
      # @param [String] stringy string from which to extract version string
      # @return [String] substring that matches {Timewizard::Utils::Wizardry::VERSION_REGEX the version regex}
      # @raise [ArgumentError] if stringy is null
      def self.only_version(stringy)
        if stringy.nil?
          raise ArgumentError, "stringy cannot be null"
        end
        VERSION_REGEX.match(stringy.to_s).to_s
      end

    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
timewizard-0.3.9 lib/timewizard/utils/wizardry.rb
timewizard-0.3.8 lib/timewizard/utils/wizardry.rb
timewizard-0.3.7 lib/timewizard/utils/wizardry.rb
timewizard-0.3.5 lib/timewizard/utils/wizardry.rb
timewizard-0.3.4 lib/timewizard/utils/wizardry.rb
timewizard-0.3.2.pre.alpha.pre.82 lib/timewizard/utils/wizardry.rb
timewizard-0.3.4.pre.alpha.pre.79 lib/timewizard/utils/wizardry.rb
timewizard-0.3.4.pre.alpha.pre.78 lib/timewizard/utils/wizardry.rb
timewizard-0.3.4.pre.alpha.pre.77 lib/timewizard/utils/wizardry.rb
timewizard-0.3.3 lib/timewizard/utils/wizardry.rb
timewizard-0.3.2.pre.alpha.pre.73 lib/timewizard/utils/wizardry.rb
timewizard-0.3.2 lib/timewizard/utils/wizardry.rb
timewizard-0.3.1 lib/timewizard/utils/wizardry.rb
timewizard-0.3.1.pre.alpha.pre.64 lib/timewizard/utils/wizardry.rb
timewizard-0.3.0.pre.alpha.pre.60 lib/timewizard/utils/wizardry.rb
timewizard-0.3.1.pre.alpha.pre.61 lib/timewizard/utils/wizardry.rb
timewizard-0.3.0.pre.alpha.pre.59 lib/timewizard/utils/wizardry.rb
timewizard-0.3.0.pre.alpha.pre.58 lib/timewizard/utils/wizardry.rb
timewizard-0.3.0.pre.alpha.pre.57 lib/timewizard/utils/wizardry.rb