Sha256: 31cfe1b6b555ed0faf58c727dec3b3c78238d0ac31a57170e47292841b2686c9

Contents?: true

Size: 1.06 KB

Versions: 1

Compression:

Stored size: 1.06 KB

Contents

require 'i18n'
require 'hashie'
require 'cupcakinator/version'
require 'cupcakinator/base'
require 'cupcakinator/config'
require 'cupcakinator/options'
require 'cupcakinator/errors'

# the purpose of cupcakinator is to provide an simple, flexible dynamic method to retrrieve configuration
# data for a class
# it provides this dynamic method as 'config' by default for both the class and any instances
# @example class Foo uses cupcakinator, see Cupcakinator::Base::cupcakinate
#   given config.yml:
#   bacon:
#     flavor: pork
#   meatball:
#     flavor:
#       - pork
#       - chicken
#   >> Foo.config
#   {"meatball"=>{"flavor"=>["chicken", "pork"]}}
#   >> Foo.config.meatball
#   {"flavor"=>["chicken", "pork"]}
module Cupcakinator

  unless @_i18n_initialized_for_cupcakinator
    locale_file = File.expand_path(File.join(File.dirname(__FILE__), '../config/locales.yml'))
    I18n.enforce_available_locales = false
    I18n.load_path << locale_file
    @_i18n_initialized_for_cupcakinator = true
  end

  def self.included(other)
    other.extend Cupcakinator::Base
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cupcakinator-2.0.0 lib/cupcakinator.rb