Sha256: 44e570b03a9d21880e675fd1f6293230ea75c750a6c02b6acce0ecbc86c97d4f
Contents?: true
Size: 585 Bytes
Versions: 92
Compression:
Stored size: 585 Bytes
Contents
# frozen_string_literal: true module Gem class List include Enumerable attr_accessor :value, :tail def initialize(value = nil, tail = nil) @value = value @tail = tail end def each n = self while n yield n.value n = n.tail end end def to_a super.reverse end def prepend(value) List.new value, self end def pretty_print(q) # :nodoc: q.pp to_a end def self.prepend(list, value) return List.new(value) unless list List.new value, list end end end
Version data entries
92 entries across 92 versions & 1 rubygems