Module: TransferWise::TransferWiseObject
- Included in:
- APIResource
- Defined in:
- lib/transfer_wise/transfer_wise_object.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #add_methods(keys) ⇒ Object
- #initialize ⇒ Object
- #initialize_from(values) ⇒ Object
- #update_attributes(values) ⇒ Object
Class Method Details
.included(base) ⇒ Object
4 5 6 |
# File 'lib/transfer_wise/transfer_wise_object.rb', line 4 def self.included(base) base.extend ClassMethods end |
Instance Method Details
#add_methods(keys) ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/transfer_wise/transfer_wise_object.rb', line 18 def add_methods(keys) self.instance_eval do keys.each do |k| self.class.send(:define_method, k.underscore) { @values[k] } end end end |
#initialize ⇒ Object
8 9 10 |
# File 'lib/transfer_wise/transfer_wise_object.rb', line 8 def initialize() @values = {} end |
#initialize_from(values) ⇒ Object
12 13 14 15 16 |
# File 'lib/transfer_wise/transfer_wise_object.rb', line 12 def initialize_from(values) add_methods(values.keys) update_attributes(values) self end |
#update_attributes(values) ⇒ Object
26 27 28 29 30 |
# File 'lib/transfer_wise/transfer_wise_object.rb', line 26 def update_attributes(values) values.each do |k, v| @values[k] = v end end |