Module: Freyr::RVM
Instance Method Summary collapse
Instance Method Details
#gemsets_for(ruby) ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/freyr/rvm.rb', line 23 def gemsets_for ruby @gemsets_for ||= Hash.new do |h,ruby| output = `rvm #{ruby} exec rvm gemset list`.strip.split("\n") output.shift h[ruby] = output.collect do |line| next unless line =~ /^(\s{3}|=)/ line.strip.sub(/\=\>\s/,'') end.compact end @gemsets_for[ruby] end |
#installed?(ruby = nil) ⇒ Boolean
5 6 7 8 9 10 11 12 13 14 |
# File 'lib/freyr/rvm.rb', line 5 def installed? ruby=nil return !`which rvm`.empty? unless ruby ruby, gemset = ruby.split('@') if rubies.include? ruby gemset ? gemsets_for(ruby).include?(gemset) : true else false end end |
#rubies ⇒ Object
16 17 18 19 20 21 |
# File 'lib/freyr/rvm.rb', line 16 def rubies @rubies ||= `rvm list`.strip.split("\n").collect do |line| next unless line =~ /^(\s{3}|=)/ line.strip.sub(/\=\>\s/,'').sub(/\s\[.+\]$/,'') end.compact end |