module FacebookAds::Fields::ClassMethods
Attributes
deserializer[RW]
field_types[RW]
Public Instance Methods
define_reader(name)
click to toggle source
# File lib/facebook_ads/fields.rb, line 41 def define_reader(name) define_method(name) do if !@__all_fields.include?(name) @__all_fields << name Utils.logger.warn("#{name} not in the fields") end load! unless loaded? if changes.has_key?(name) changes[name] else @attributes[name] end end end
define_writer(name)
click to toggle source
# File lib/facebook_ads/fields.rb, line 58 def define_writer(name) define_method("#{name}=") do |val| changes[name] = val @__all_fields.add(name.to_s) end end
field(name, type, *args)
click to toggle source
# File lib/facebook_ads/fields.rb, line 28 def field(name, type, *args) self.field_types ||= {} self.field_types[name] = type unless name == :id define_reader(name) define_writer(name) end self.deserializer ||= ParamSet.new self.deserializer.has_param(name, type, *args) end