Sha256: 39693325c33245d012fed1124ac5a4db3eed323838402a64c9332e4787448cbb

Contents?: true

Size: 610 Bytes

Versions: 1

Compression:

Stored size: 610 Bytes

Contents

require "yaml"
require "erb"
require "json"

require "figgy/version"
require "figgy/configuration"
require "figgy/hash"
require "figgy/finder"
require "figgy/store"

class Figgy
  FileNotFound = Class.new(StandardError)

  def self.build(&block)
    config = Configuration.new
    block.call(config)
    new(config)
  end

  def initialize(config)
    @config = config
    @finder = Finder.new(config)
    @store  = Store.new(@finder, @config)

    if @config.preload?
      @finder.all_key_names.each { |key| @store.get(key) }
    end
  end

  def method_missing(m, *args, &block)
    @store.get(m)
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
figgy-0.0.1 lib/figgy.rb