Class: Nu::GemTools
- Inherits:
-
Object
- Object
- Nu::GemTools
- Defined in:
- lib/nu/gem_tools.rb
Class Method Summary collapse
Class Method Details
.lib_for(name, requirement = nil) ⇒ Object
17 18 19 20 21 22 23 24 25 26 |
# File 'lib/nu/gem_tools.rb', line 17 def self.lib_for(name, requirement=nil) gem = spec_for(name, requirement) gem_path = gem.full_gem_path libdir = File.join(gem_path,"lib") unless File.exist?(libdir) libdir = IO.readlines(File.join(gem_path, ".require_paths"))[0].strip libdir = File.(File.join(gem_path,libdir)) end libdir end |
.spec_for(name, requirement = nil) ⇒ Object
6 7 8 9 10 11 12 13 14 15 |
# File 'lib/nu/gem_tools.rb', line 6 def self.spec_for(name, requirement=nil) unless requirement.respond_to?('satisfied_by?') requirement = Gem::Requirement.create(requirement) end dependency = Gem::Dependency.new(name,requirement) searcher = Gem::GemPathSearcher.new() all_installed_gems = searcher.init_gemspecs() return all_installed_gems.detect {|spec| spec.satisfies_requirement?(dependency)} end |