Class: Gem::StubSpecification::StubLine
- Inherits:
- 
      Object
      
        - Object
- Gem::StubSpecification::StubLine
 
- Defined in:
- lib/rubygems/stub_specification.rb
Overview
:nodoc: all
Constant Summary collapse
- NO_EXTENSIONS =
- [].freeze 
- REQUIRE_PATHS =
          These are common require paths. 
- { # :nodoc: "lib" => "lib", "test" => "test", "ext" => "ext", }.freeze 
- REQUIRE_PATH_LIST =
          These are common require path lists. This hash is used to optimize and consolidate require_path objects. Most specs just specify “lib” in their require paths, so lets take advantage of that by pre-allocating a require path list for that case. 
- { # :nodoc: "lib" => ["lib"].freeze, }.freeze 
Instance Attribute Summary collapse
- 
  
    
      #extensions  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute extensions. 
- 
  
    
      #full_name  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute full_name. 
- 
  
    
      #name  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute name. 
- 
  
    
      #platform  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute platform. 
- 
  
    
      #require_paths  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute require_paths. 
- 
  
    
      #version  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute version. 
Instance Method Summary collapse
- 
  
    
      #initialize(data, extensions)  ⇒ StubLine 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    A new instance of StubLine. 
Constructor Details
#initialize(data, extensions) ⇒ StubLine
Returns a new instance of StubLine.
| 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | # File 'lib/rubygems/stub_specification.rb', line 36 def initialize(data, extensions) parts = data[PREFIX.length..-1].split(" ", 4) @name = -parts[0] @version = if Gem::Version.correct?(parts[1]) Gem::Version.new(parts[1]) else Gem::Version.new(0) end @platform = Gem::Platform.new parts[2] @extensions = extensions @full_name = if platform == Gem::Platform::RUBY "#{name}-#{version}" else "#{name}-#{version}-#{platform}" end path_list = parts.last @require_paths = REQUIRE_PATH_LIST[path_list] || path_list.split("\0").map! do |x| REQUIRE_PATHS[x] || x end end | 
Instance Attribute Details
#extensions ⇒ Object (readonly)
Returns the value of attribute extensions.
| 16 17 18 | # File 'lib/rubygems/stub_specification.rb', line 16 def extensions @extensions end | 
#full_name ⇒ Object (readonly)
Returns the value of attribute full_name.
| 16 17 18 | # File 'lib/rubygems/stub_specification.rb', line 16 def full_name @full_name end | 
#name ⇒ Object (readonly)
Returns the value of attribute name.
| 16 17 18 | # File 'lib/rubygems/stub_specification.rb', line 16 def name @name end | 
#platform ⇒ Object (readonly)
Returns the value of attribute platform.
| 16 17 18 | # File 'lib/rubygems/stub_specification.rb', line 16 def platform @platform end | 
#require_paths ⇒ Object (readonly)
Returns the value of attribute require_paths.
| 16 17 18 | # File 'lib/rubygems/stub_specification.rb', line 16 def require_paths @require_paths end | 
#version ⇒ Object (readonly)
Returns the value of attribute version.
| 16 17 18 | # File 'lib/rubygems/stub_specification.rb', line 16 def version @version end |