Sha256: 4f26185d4a721068d04ddc1507b138dd082f4543383e2ced298a8d1ebc5d605b

Contents?: true

Size: 487 Bytes

Versions: 23

Compression:

Stored size: 487 Bytes

Contents

module Configuration

  def configuration
    yield self
  end

  def define_setting(name, default = nil)
    class_variable_set("@@#{name}", default)

    define_class_method "#{name}=" do |value|
      class_variable_set("@@#{name}", value)
    end

    define_class_method name do
      class_variable_get("@@#{name}")
    end
  end

  private

  def define_class_method(name, &block)
    (class << self; self; end).instance_eval do
      define_method name, &block
    end
  end

end

Version data entries

23 entries across 23 versions & 3 rubygems

Version Path
dry-swagger-0.3.0 lib/helpers/configuration.rb
bitrix_webhook-0.2.10 lib/helpers/configuration.rb
bitrix_webhook-0.2.9 lib/helpers/configuration.rb
bitrix_webhook-0.2.8 lib/helpers/configuration.rb
bitrix_webhook-0.2.7 lib/helpers/configuration.rb
bitrix_webhook-0.2.6 lib/helpers/configuration.rb
bitrix_webhook-0.2.5 lib/helpers/configuration.rb
bitrix_webhook-0.2.4 lib/helpers/configuration.rb
bitrix_webhook-0.2.3 lib/helpers/configuration.rb
bitrix_webhook-0.2.2 lib/helpers/configuration.rb
bitrix_webhook-0.2.1 lib/helpers/configuration.rb
bitrix_webhook-0.2.0 lib/helpers/configuration.rb
bitrix_webhook-0.1.5 lib/helpers/configuration.rb
bitrix_webhook-0.1.4 lib/helpers/configuration.rb
bitrix_webhook-0.1.3 lib/helpers/configuration.rb
bitrix_webhook-0.1.2 lib/helpers/configuration.rb
smsfly-0.4.7 lib/helpers/configuration.rb
smsfly-0.4.6 lib/helpers/configuration.rb
smsfly-0.4.4 lib/helpers/configuration.rb
smsfly-0.4.3 lib/helpers/configuration.rb