module Flows::Util::InheritableSingletonVars::IsolationStrategy::Migrator

@api private

Public Class Methods

call(from, to) click to toggle source
# File lib/flows/util/inheritable_singleton_vars/isolation_strategy.rb, line 20
def self.call(from, to)
  parent_var_map = from.instance_variable_get(VAR_MAP_VAR_NAME)
  child_var_map = to.instance_variable_get(VAR_MAP_VAR_NAME) || {}

  to.instance_variable_set(VAR_MAP_VAR_NAME, child_var_map.merge(parent_var_map))

  parent_var_map.each do |name, value_proc|
    to.instance_variable_set(name, value_proc.call)
  end
end