Sha256: f2f339a1551f08939036d9ac8ae988a068aee4c141fb88c3ca03fe8e13c3fa05

Contents?: true

Size: 527 Bytes

Versions: 49

Compression:

Stored size: 527 Bytes

Contents

# Provides methods for objects that store reactive value's to trigger
module ObjectTracking
  def __setup_tracking(key, value)
    if value.reactive?      
      # TODO: We should build this in so it fires just for the current index.
      # Currently this is a big performance hit.
      chain_listener = event_chain.add_object(value.reactive_manager) do |event, *args|
        yield(event, key, args)
      end
      @reactive_element_listeners ||= {}
      @reactive_element_listeners[key] = chain_listener
    end
  end
end

Version data entries

49 entries across 49 versions & 1 rubygems

Version Path
volt-0.6.5 lib/volt/reactive/object_tracking.rb
volt-0.6.4 lib/volt/reactive/object_tracking.rb
volt-0.6.3 lib/volt/reactive/object_tracking.rb
volt-0.6.2 lib/volt/reactive/object_tracking.rb
volt-0.6.1 lib/volt/reactive/object_tracking.rb
volt-0.6.0 lib/volt/reactive/object_tracking.rb
volt-0.5.18 lib/volt/reactive/object_tracking.rb
volt-0.5.17 lib/volt/reactive/object_tracking.rb
volt-0.5.16 lib/volt/reactive/object_tracking.rb
volt-0.5.15 lib/volt/reactive/object_tracking.rb
volt-0.5.14 lib/volt/reactive/object_tracking.rb
volt-0.5.13 lib/volt/reactive/object_tracking.rb
volt-0.5.12 lib/volt/reactive/object_tracking.rb
volt-0.5.11 lib/volt/reactive/object_tracking.rb
volt-0.5.10 lib/volt/reactive/object_tracking.rb
volt-0.5.9 lib/volt/reactive/object_tracking.rb
volt-0.5.8 lib/volt/reactive/object_tracking.rb
volt-0.5.7 lib/volt/reactive/object_tracking.rb
volt-0.5.6 lib/volt/reactive/object_tracking.rb
volt-0.5.4 lib/volt/reactive/object_tracking.rb