summaryrefslogtreecommitdiff
path: root/lib/rubygems/source/vendor.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rubygems/source/vendor.rb')
-rw-r--r--lib/rubygems/source/vendor.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/lib/rubygems/source/vendor.rb b/lib/rubygems/source/vendor.rb
new file mode 100644
index 0000000000..44ef614441
--- /dev/null
+++ b/lib/rubygems/source/vendor.rb
@@ -0,0 +1,24 @@
+# frozen_string_literal: true
+
+##
+# This represents a vendored source that is similar to an installed gem.
+
+class Gem::Source::Vendor < Gem::Source::Installed
+ ##
+ # Creates a new Vendor source for a gem that was unpacked at +path+.
+
+ def initialize(path)
+ @uri = path
+ end
+
+ def <=>(other)
+ case other
+ when Gem::Source::Lock then
+ -1
+ when Gem::Source::Vendor then
+ 0
+ when Gem::Source then
+ 1
+ end
+ end
+end