Class: HashDependency

Inherits:
Object show all
Defined in:
lib/volt/reactive/hash_dependency.rb

Instance Method Summary collapse

Constructor Details

#initializeHashDependency

Returns a new instance of HashDependency.



2
3
4
# File 'lib/volt/reactive/hash_dependency.rb', line 2

def initialize
  @hash_depedencies = {}
end

Instance Method Details

#changed!(key) ⇒ Object



10
11
12
# File 'lib/volt/reactive/hash_dependency.rb', line 10

def changed!(key)
  ensure_key(key).changed!
end

#changed_all!Object



25
26
27
28
29
# File 'lib/volt/reactive/hash_dependency.rb', line 25

def changed_all!
  @hash_depedencies.each_pair do |key,value|
    value.changed!
  end
end

#delete(key) ⇒ Object



14
15
16
17
18
19
20
21
22
23
# File 'lib/volt/reactive/hash_dependency.rb', line 14

def delete(key)
  dep = @hash_depedencies[key]

  if dep
    dep.changed!
    dep.remove
  end

  @hash_depedencies.delete(key)
end

#depend(key) ⇒ Object



6
7
8
# File 'lib/volt/reactive/hash_dependency.rb', line 6

def depend(key)
  ensure_key(key).depend
end