Class: Gem::PlatformMismatch
- Inherits:
-
ErrorReason
- Object
- ErrorReason
- Gem::PlatformMismatch
- Defined in:
- lib/rubygems/errors.rb
Overview
Generated when trying to lookup a gem to indicate that the gem was found, but that it isn’t usable on the current platform.
fetch and install read these and report them to the user to aid in figuring out why a gem couldn’t be installed.
Instance Attribute Summary collapse
-
#name ⇒ Object
readonly
the name of the gem.
-
#platforms ⇒ Object
readonly
The platforms that are mismatched.
-
#version ⇒ Object
readonly
the version.
Instance Method Summary collapse
-
#add_platform(platform) ⇒ Object
append a platform to the list of mismatched platforms.
-
#initialize(name, version) ⇒ PlatformMismatch
constructor
A new instance of PlatformMismatch.
-
#wordy ⇒ Object
A wordy description of the error.
Constructor Details
#initialize(name, version) ⇒ PlatformMismatch
Returns a new instance of PlatformMismatch.
46 47 48 49 50 |
# File 'lib/rubygems/errors.rb', line 46 def initialize(name, version) @name = name @version = version @platforms = [] end |
Instance Attribute Details
#name ⇒ Object (readonly)
the name of the gem
36 37 38 |
# File 'lib/rubygems/errors.rb', line 36 def name @name end |
#platforms ⇒ Object (readonly)
The platforms that are mismatched
44 45 46 |
# File 'lib/rubygems/errors.rb', line 44 def platforms @platforms end |
#version ⇒ Object (readonly)
the version
40 41 42 |
# File 'lib/rubygems/errors.rb', line 40 def version @version end |
Instance Method Details
#add_platform(platform) ⇒ Object
append a platform to the list of mismatched platforms.
Platforms are added via this instead of injected via the constructor so that we can loop over a list of mismatches and just add them rather than perform some kind of calculation mismatch summary before creation.
58 59 60 |
# File 'lib/rubygems/errors.rb', line 58 def add_platform(platform) @platforms << platform end |
#wordy ⇒ Object
A wordy description of the error.
64 65 66 67 68 69 70 |
# File 'lib/rubygems/errors.rb', line 64 def wordy "Found %s (%s), but was for platform%s %s" % [@name, @version, @platforms.size == 1 ? '' : 's', @platforms.join(' ,')] end |