Module: Statinize::Statinizable::PrependedMethods
- Defined in:
- lib/statinize/statinizable.rb
Instance Method Summary collapse
- #attributes ⇒ Object
- #initialize(*args, **kwargs, &block) ⇒ Object
- #statinizer ⇒ Object
- #validation ⇒ Object (also: #define_validation)
Instance Method Details
#attributes ⇒ Object
27 28 29 30 31 |
# File 'lib/statinize/statinizable.rb', line 27 def attributes @attributes = Hash[ statinizer.attributes.map { |a| [a.name, public_send(a.name)] } ] end |
#initialize(*args, **kwargs, &block) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/statinize/statinizable.rb', line 9 def initialize(*args, **kwargs, &block) if private_methods(false).include? :initialize super(*args, **kwargs, &block) check_defined!(kwargs) else statinizer.attributes.map(&:name).each do |attr| instance_variable_set("@#{attr}", kwargs[attr]) if kwargs.key?(attr) end end define_validation validate! end |
#statinizer ⇒ Object
35 36 37 |
# File 'lib/statinize/statinizable.rb', line 35 def statinizer self.class.statinizer end |
#validation ⇒ Object Also known as: define_validation
23 24 25 |
# File 'lib/statinize/statinizable.rb', line 23 def validation @validation ||= Validation.new(statinizer, self) end |