module SmartCore::Initializer::Functionality
@api private @since 0.3.0
Constants
- INITIAL_TYPE_SYSTEM
@return [NilClass]
@api private @since 0.3.0
Public Class Methods
includable_module(type_system: INITIAL_TYPE_SYSTEM)
click to toggle source
@option type_system [String, Symbol, NilClass] @return [Module]
@api private @since 0.3.0
# File lib/smart_core/initializer/functionality.rb, line 18 def includable_module(type_system: INITIAL_TYPE_SYSTEM) Module.new.tap do |extension| extension.singleton_class.define_method(:included) do |base_klass| base_klass.include(::SmartCore::Initializer) base_klass.__initializer_settings__.type_system = type_system end end end
seed_to(base_klass)
click to toggle source
@param base_klass [Class] @return [void]
@api private @since 0.3.0
# File lib/smart_core/initializer/functionality.rb, line 32 def seed_to(base_klass) base_klass.extend(SmartCore::Initializer::DSL) base_klass.include(SmartCore::Initializer::InstanceAttributeAccessing) end