class Sibylla::Configuration

Public Class Methods

new(config = {}) click to toggle source
# File lib/sibylla/configuration.rb, line 3
def initialize(config = {})
  config =
    YAML.load_file("#{Sibylla::Root}/configuration.yml").merge(config)
  config.each do |key, value|
    value_set(key, value)

    define_singleton_method("#{key}=") do |val|
      instance_variable_set("@#{key}", val)
    end

    define_singleton_method(key) do
      instance_variable_get("@#{key}")
    end
  end
end

Public Instance Methods

value_set(key, value) click to toggle source
# File lib/sibylla/configuration.rb, line 19
def value_set(key, value)
  instance_variable_set(
    "@#{key}",
    if value.is_a?(Array)
      eval(value.join('; '))
    elsif value.is_a?(Hash)
      value.each do |k, v|
        value[k] = v.is_a?(Array) ? eval(v.join("; ")) : v
      end
    else
      value
    end
  )
end