Class: ActiveMappers::Handlers::Inheritance

Inherits:
Object
  • Object
show all
Defined in:
lib/active_mappers/handlers/inheritance.rb

Instance Method Summary collapse

Constructor Details

#initialize(subclass, klass) ⇒ Inheritance

Returns a new instance of Inheritance.



4
5
6
7
# File 'lib/active_mappers/handlers/inheritance.rb', line 4

def initialize(subclass, klass)
  @subclass = subclass
  @klass = klass
end

Instance Method Details

#handleObject



9
10
11
12
13
14
15
16
# File 'lib/active_mappers/handlers/inheritance.rb', line 9

def handle
  return nil if regular_inheritance?

  @klass.class_variables.each do |var_name|
    dsl_values = @subclass.class_variable_get(var_name)
    dsl_values[@subclass.name] = dsl_values[@klass.name].dup
  end
end