class Gem::Commands::DependencyCommand - Documentation for Ruby 4.0
Description: Documentation for the Gem::Commands::DependencyCommand class
Keywords: ruby,class,Gem::Commands::DependencyCommand

🔍

No recent searches

# class Gem::Commands::DependencyCommand

### Public Class Methods

new ()
Source

    # File lib/rubygems/commands/dependency_command.rb, line 11
    def initialize
      super "dependency",
            "Show the dependencies of an installed gem",
            version: Gem::Requirement.default, domain: :local

      add_version_option
      add_platform_option
      add_prerelease_option

      add_option("-R", "--[no-]reverse-dependencies",
                 "Include reverse dependencies in the output") do |value, options|
        options[:reverse_dependencies] = value
      end

      add_option("-p", "--pipe",
                 "Pipe Format (name --version ver)") do |value, options|
        options[:pipe_format] = value
      end

      add_local_remote_options
    end

Calls superclass method `Gem::Command::new`

### Public Instance Methods

execute ()
Source

    # File lib/rubygems/commands/dependency_command.rb, line 117
    def execute
      ensure_local_only_reverse_dependencies

      pattern = name_pattern options[:args]
      requirement = Gem::Requirement.new options[:version]

      specs = fetch_specs pattern, requirement, options[:prerelease]

      reverse = reverse_dependencies specs

      if options[:pipe_format]
        display_pipe specs
      else
        display_readable specs, reverse
      end
    end

### Private Instance Methods

name_pattern (args)
Source

    # File lib/rubygems/commands/dependency_command.rb, line 196
    def name_pattern(args)
      return if args.empty?

      if args.length == 1 && args.first =~ /\A(.*)(i)?\z/m
        flags = $2 ? Regexp::IGNORECASE : nil
        Regexp.new $1, flags
      else
        /\A#{Regexp.union(*args)}/
      end
    end