Module: Hibiki::Reactive::Initializer

Defined in:
lib/hibiki/reactive.rb

Overview

Prepended so declared effects start after the user's initialize ran (they usually read state the constructor is expected to have set up).

Instance Method Summary collapse

Instance Method Details

#initializeObject



61
62
63
64
65
66
67
# File 'lib/hibiki/reactive.rb', line 61

def initialize(...)
  super
  blocks = self.class.ancestors.reverse.flat_map do |mod|
    mod.respond_to?(:hibiki_effect_blocks) ? mod.hibiki_effect_blocks : []
  end
  @__hibiki_effects = blocks.map { |block| Effect.new { instance_exec(&block) } }
end