class GemsBond::Spy::One
Inspects gem and outputs the result in terminal
Constants
- PRELOAD_KEYS
Public Class Methods
new(name)
click to toggle source
Initializes an instance @param name [String] @return [GemsBond::Spy::One]
# File lib/gems_bond/spy/one.rb, line 24 def initialize(name) @name = name end
Public Instance Methods
call()
click to toggle source
Fetches gem then prints information @return [void]
# File lib/gems_bond/spy/one.rb, line 30 def call if gem.exist? gem.prepare_data(keys: PRELOAD_KEYS, concurrency: false) GemsBond::Printers::Stdout.new(gem).call else puts "Sorry, this gem could not be found!" end end
Private Instance Methods
dependency()
click to toggle source
Finds dependency corresponding to the name @return [Bundler::Dependency, nil]
# File lib/gems_bond/spy/one.rb, line 43 def dependency @dependency ||= Bundler.load.gems.find { |dep| dep.name == @name } end
gem()
click to toggle source
Generates a gem instance @return [GemsBond::Gem]
# File lib/gems_bond/spy/one.rb, line 49 def gem if dependency GemsBond::Gem.new(dependency) else unknown_dependency = Bundler::Dependency.new(@name, nil) GemsBond::Gem.new(unknown_dependency, unknown: true) end end