lib/hamster/tuple.rb in hamster-0.2.13 vs lib/hamster/tuple.rb in hamster-0.3.0
- old
+ new
@@ -1,13 +1,17 @@
require 'forwardable'
+require 'hamster/immutable'
+
module Hamster
class Tuple
extend Forwardable
+ include Immutable
+
def initialize(*items)
@items = items.freeze
end
def first
@@ -22,14 +26,9 @@
return true if other.equal?(self)
return false unless other.class.equal?(self.class)
@items.eql?(other.instance_eval{@items})
end
def_delegator :self, :eql?, :==
-
- def dup
- self
- end
- def_delegator :self, :dup, :clone
def to_ary
@items
end