Sha256: 77db74949399d6e57375a8603cc855f880ac7472c3e80653a7d8436cb562a27b
Contents?: true
Size: 615 Bytes
Versions: 14
Compression:
Stored size: 615 Bytes
Contents
module Gem List = Struct.new(:value, :tail) class List def each n = self while n yield n.value n = n.tail end end def to_a ary = [] n = self while n ary.unshift n.value n = n.tail end ary end def find n = self while n v = n.value return v if yield(v) n = n.tail end nil end def prepend(value) List.new value, self end def self.prepend(list, value) return List.new(value) unless list List.new value, list end end end
Version data entries
14 entries across 14 versions & 1 rubygems