module TransferWise::TransferWiseObject

Public Class Methods

included(base) click to toggle source
# File lib/transfer_wise/transfer_wise_object.rb, line 4
def self.included(base)
  base.extend ClassMethods
end
new() click to toggle source
# File lib/transfer_wise/transfer_wise_object.rb, line 8
def initialize()
  @values = {}
end

Public Instance Methods

add_methods(keys) click to toggle source
# 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_from(values) click to toggle source
# 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) click to toggle source
# File lib/transfer_wise/transfer_wise_object.rb, line 26
def update_attributes(values)
  values.each do |k, v|
    @values[k] = v
  end
end