class DependencyInspector::RubyGemfile::Source

Attributes

dependency_names[RW]
remotes[R]

Public Class Methods

new(options = {}) click to toggle source
# File lib/dependency_inspector/ruby_gemfile/source.rb, line 7
def initialize(options = {})
  @options = options
  @remotes = []
  Array(options['remotes'] || []).reverse_each { |r| add_remote(r) }
end

Public Instance Methods

==(o)
Alias for: eql?
add_remote(source) click to toggle source
# File lib/dependency_inspector/ruby_gemfile/source.rb, line 19
def add_remote(source)
  uri = normalize_uri(source)
  @remotes.unshift(uri) unless @remotes.include?(uri)
end
eql?(o) click to toggle source
# File lib/dependency_inspector/ruby_gemfile/source.rb, line 13
def eql?(o)
  o.is_a?(Source) && remotes_equal?(o.remotes)
end
Also aliased as: ==
normalize_uri(uri) click to toggle source
# File lib/dependency_inspector/ruby_gemfile/source.rb, line 24
def normalize_uri(uri)
  uri = uri.to_s
  uri = "#{uri}/" unless uri =~ %r{/$}
  uri = URI(uri)
  fail Exception, 'The source must be an absolute URI' unless uri.absolute?
  uri
end