Module: InitializeWith
- Defined in:
- lib/initialize_with.rb,
lib/initialize_with/version.rb
Defined Under Namespace
Modules: ClassMethods
Constant Summary collapse
- VERSION =
"0.1.0"
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.included(base) ⇒ Object
4 5 6 |
# File 'lib/initialize_with.rb', line 4 def self.included(base) base.extend ClassMethods end |
Instance Method Details
#initialize ⇒ Object
8 9 10 11 12 |
# File 'lib/initialize_with.rb', line 8 def initialize(...) self.class._validate_initialization_parameters!(...) self.class._apply_initialization_parameters(self, ...) self.class.instance_variable_get(:@_initialize_with_blocks)&.each { |blk| self.instance_exec(&blk) } end |