diff options
Diffstat (limited to 'jni/ruby/lib/rubygems/source/installed.rb')
-rw-r--r-- | jni/ruby/lib/rubygems/source/installed.rb | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/jni/ruby/lib/rubygems/source/installed.rb b/jni/ruby/lib/rubygems/source/installed.rb new file mode 100644 index 0000000..bd05c75 --- /dev/null +++ b/jni/ruby/lib/rubygems/source/installed.rb @@ -0,0 +1,40 @@ +## +# Represents an installed gem. This is used for dependency resolution. + +class Gem::Source::Installed < Gem::Source + + def initialize # :nodoc: + @uri = nil + end + + ## + # Installed sources sort before all other sources + + def <=> other + case other + when Gem::Source::Git, + Gem::Source::Lock, + Gem::Source::Vendor then + -1 + when Gem::Source::Installed then + 0 + when Gem::Source then + 1 + else + nil + end + end + + ## + # We don't need to download an installed gem + + def download spec, path + nil + end + + def pretty_print q # :nodoc: + q.text '[Installed]' + end + +end + |