Sha256: 6dd350369c0613aaaa25e2dddf6a4d3a106078fbb9273a5e2d3b93c02ed3e972

Contents?: true

Size: 1.31 KB

Versions: 4

Compression:

Stored size: 1.31 KB

Contents

#--
# Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
# All rights reserved.
# See LICENSE.txt for permissions.
#++

require 'rubygems'

# Mixin methods for --version and --platform Gem::Command options.
module Gem::VersionOption

  # Add the --platform option to the option parser.
  def add_platform_option(task = command, *wrap)
    OptionParser.accept Gem::Platform do |value|
      if value == Gem::Platform::RUBY then
        value
      else
        Gem::Platform.new value
      end
    end

    add_option('--platform PLATFORM', Gem::Platform,
               "Specify the platform of gem to #{task}", *wrap) do
                 |value, options|
      unless options[:added_platform] then
        Gem.platforms = [Gem::Platform::RUBY]
        options[:added_platform] = true
      end

      Gem.platforms << value unless Gem.platforms.include? value
    end
  end

  # Add the --version option to the option parser.
  def add_version_option(task = command, *wrap)
    OptionParser.accept Gem::Requirement do |value|
      Gem::Requirement.new value
    end

    add_option('-v', '--version VERSION', Gem::Requirement,
               "Specify version of gem to #{task}", *wrap) do
                 |value, options|
      options[:version] = value
    end
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
shoesgem-0.1430.0 shoes/ruby/lib/rubygems/version_option.rb
shoesgem-0.1429.0 shoes/ruby/lib/rubygems/version_option.rb
shoesgem-0.1428.0 shoes/ruby/lib/rubygems/version_option.rb
shoesgem-0.1426.0 shoes/ruby/lib/rubygems/version_option.rb