module TransparentData::Configurable
Public Instance Methods
configure() { |self| ... }
click to toggle source
# File lib/transparent_data/configurable.rb, line 3 def configure yield self end
Private Instance Methods
initialize_config_accessors(*attributes)
click to toggle source
# File lib/transparent_data/configurable.rb, line 9 def initialize_config_accessors(*attributes) module_eval do attributes.each do |attr| define_singleton_method(attr) do instance_variable_get("@#{attr}") || raise(NotImplementedError, "Need to configure: #{attr}") end define_singleton_method("#{attr}=") do |value| instance_variable_get("@#{attr}") || instance_variable_set("@#{attr}", value) end end end end