Class: SmartCore::Initializer::ExtensionDefiner Private

Inherits:
Object
  • Object
show all
Defined in:
lib/smart_core/initializer/extension_definer.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Since:

  • 0.5.0

Instance Method Summary collapse

Constructor Details

#initialize(processed_klass) ⇒ void

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Parameters:

  • processed_klass (Class)

Since:

  • 0.5.0



11
12
13
14
# File 'lib/smart_core/initializer/extension_definer.rb', line 11

def initialize(processed_klass)
  @processed_klass = processed_klass
  @definition_lock = Mutex.new
end

Instance Method Details

#append_extension(raw_extension) ⇒ void

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

This method returns an undefined value.

Parameters:

  • raw_extension (Proc)

Since:

  • 0.5.0



21
22
23
24
25
26
# File 'lib/smart_core/initializer/extension_definer.rb', line 21

def append_extension(raw_extension)
  thread_safe do
    extension = build_extension(raw_extension)
    extend_initialization_flow(extension)
  end
end