Module: ApiClient::Mixins::Configuration

Included in:
Base, Resource::Base, Scope
Defined in:
lib/api_client/mixins/configuration.rb

Instance Method Summary collapse

Instance Method Details

#dsl_accessor(*names) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/api_client/mixins/configuration.rb', line 7

def dsl_accessor(*names)
  options = names.last.is_a?(Hash) ? names.pop : {}
  names.each do |name|
    returns = options[:return_self] ? "self" : "@#{name}"
    class_eval <<-STR
      def #{name}(value = nil)
        value.nil? ? @#{name} : @#{name} = value
        #{returns}
      end
    STR
  end
end