123456789_123456789_123456789_123456789_123456789_

Class: Gem::List

Do not use. This class is for internal use only.
Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Instance Chain:
self, Enumerable
Inherits: Object
Defined in: lib/rubygems/util/list.rb

Overview

The List class is currently unused and will be removed in the next major rubygems version

Class Method Summary

Instance Attribute Summary

Instance Method Summary

Constructor Details

.new(value = nil, tail = nil) ⇒ List

[ GitHub ]

  
# File 'lib/rubygems/util/list.rb', line 9

def initialize(value = nil, tail = nil)
  @value = value
  @tail = tail
end

Class Method Details

.prepend(list, value)

[ GitHub ]

  
# File 'lib/rubygems/util/list.rb', line 34

def self.prepend(list, value)
  return List.new(value) unless list
  List.new value, list
end

Instance Attribute Details

#tail (rw)

[ GitHub ]

  
# File 'lib/rubygems/util/list.rb', line 7

attr_accessor :value, :tail

#value (rw)

[ GitHub ]

  
# File 'lib/rubygems/util/list.rb', line 7

attr_accessor :value, :tail

Instance Method Details

#each

[ GitHub ]

  
# File 'lib/rubygems/util/list.rb', line 14

def each
  n = self
  while n
    yield n.value
    n = n.tail
  end
end

#prepend(value)

[ GitHub ]

  
# File 'lib/rubygems/util/list.rb', line 26

def prepend(value)
  List.new value, self
end

#pretty_print(q)

[ GitHub ]

  
# File 'lib/rubygems/util/list.rb', line 30

def pretty_print(q) # :nodoc:
  q.pp to_a
end

#to_a

[ GitHub ]

  
# File 'lib/rubygems/util/list.rb', line 22

def to_a
  super.reverse
end