class Ecogem::Gemfile::Dependency
Attributes
gemfile[R]
Public Class Methods
new(gemfile, data)
click to toggle source
# File lib/ecogem/gemfile/dependency.rb, line 6 def initialize(gemfile, data) @gemfile = gemfile @data = data end
Public Instance Methods
code()
click to toggle source
# File lib/ecogem/gemfile/dependency.rb, line 31 def code @code ||= begin a = ["gem \"#{name}\""] if !(versions.size == 1 && versions[0] == '>= 0') a << versions.map{|i| "\"#{i}\""}.join(', ') end if platforms.size > 0 s = if platforms.size == 1 ":#{platforms[0]}" else '[' + platforms.map{|i| ":#{i}"}.join(', ') + ']' end a << "platform: #{s}" end if groups.size > 0 && !(groups.size == 1 && groups[0] == :default) s = if groups.size == 1 ":#{groups[0]}" else '[' + groups.map{|i| ":#{i}"}.join(', ') + ']' end a << "group: #{s}" end if s = source.code a << s end a.join(', ') end end
groups()
click to toggle source
# File lib/ecogem/gemfile/dependency.rb, line 27 def groups @groups ||= @data.instance_variable_get(:@groups).dup end
name()
click to toggle source
# File lib/ecogem/gemfile/dependency.rb, line 11 def name @data.name end
platforms()
click to toggle source
# File lib/ecogem/gemfile/dependency.rb, line 23 def platforms @platforms ||= @data.instance_variable_get(:@platforms).dup end
source()
click to toggle source
# File lib/ecogem/gemfile/dependency.rb, line 15 def source @source ||= ::Ecogem::Gemfile::Source.new(self, @data.instance_variable_get(:@source)) end
versions()
click to toggle source
# File lib/ecogem/gemfile/dependency.rb, line 19 def versions @versions ||= @data.requirement.requirements.map{|i| "#{i[0]} #{i[1]}"} end