Sha256: d843b937f8bea18bb49a46ec8657ee97a7b40e2029c0cb5985db957347bc95d7

Contents?: true

Size: 690 Bytes

Versions: 2

Compression:

Stored size: 690 Bytes

Contents

module CanTango
  class Config
    module ClassMethods
      def self.extended base
        base.class_eval do
          components.each do |conf_module|
            class_eval %{
              def #{conf_module} &block
                conf = conf::#{conf_module.to_s.camelize}.instance
                yield conf if block
                conf
              end
            }
          end
        end
      end
      
      def components
        [
          :guest, :autoload, :user, :account, :models, :modes, :roles, :role_groups,
          :engines, :users, :accounts, :categories, :adapters, :debug,
          :localhosts, :orms, :hooks, :helpers
        ]
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
cantango-config-0.2.1 lib/cantango/config/class_methods.rb
cantango-config-0.2.0 lib/cantango/config/class_methods.rb