class Qonfig::Commands::Definition::Compose
@api private @since 0.1.0
Attributes
composable_data_set_klass[R]
@return [Qonfig::DataSet]
@api private @since 0.1.0
Public Class Methods
new(composable_data_set_klass)
click to toggle source
@param composable_data_set_klass
[Qonfig::DataSet]
@raise [Qonfig::ArgumentError]
@api private @since 0.1.0
# File lib/qonfig/commands/definition/compose.rb, line 21 def initialize(composable_data_set_klass) unless composable_data_set_klass.is_a?(Class) && composable_data_set_klass < Qonfig::DataSet raise( Qonfig::ArgumentError, 'Composed config class should be a subtype of Qonfig::DataSet' ) end @composable_data_set_klass = composable_data_set_klass end
Public Instance Methods
call(data_set, settings)
click to toggle source
@param data_set [Qonfig::DataSet] @param settings [Qonfig::Settings] @return [void]
@api private @since 0.1.0
# File lib/qonfig/commands/definition/compose.rb, line 38 def call(data_set, settings) # NOTE: append new validators data_set.class.validators.concat(composable_data_set_klass.validators.dup) # NOTE: append new settings composite_settings = composable_data_set_klass.new.settings settings.__append_settings__(composite_settings) end