Class: Factbase::Taped::TapedHash

Inherits:
Object
  • Object
show all
Defined in:
lib/factbase/taped.rb

Overview

Decorator of Hash.

Instance Method Summary collapse

Constructor Details

#initialize(origin, added) ⇒ TapedHash

Returns a new instance of TapedHash.



92
93
94
95
# File 'lib/factbase/taped.rb', line 92

def initialize(origin, added)
  @origin = origin
  @added = added
end

Instance Method Details

#[](key) ⇒ Object



105
106
107
108
109
# File 'lib/factbase/taped.rb', line 105

def [](key)
  v = @origin[key]
  v = TapedArray.new(v, @origin.object_id, @added) if v.is_a?(Array)
  v
end

#[]=(key, value) ⇒ Object



111
112
113
114
# File 'lib/factbase/taped.rb', line 111

def []=(key, value)
  @origin[key] = value
  @added.append(@origin.object_id)
end

#keysObject



97
98
99
# File 'lib/factbase/taped.rb', line 97

def keys
  @origin.keys
end

#mapObject



101
102
103
# File 'lib/factbase/taped.rb', line 101

def map(&)
  @origin.map(&)
end