rails--rails/railties/lib/rails/railtie/configurable.rb

36 lines
671 B
Ruby
Raw Normal View History

2011-06-07 10:06:02 +00:00
require 'active_support/concern'
module Rails
class Railtie
module Configurable
extend ActiveSupport::Concern
module ClassMethods
2012-10-14 10:03:39 +00:00
delegate :config, to: :instance
def inherited(base)
raise "You cannot inherit from a #{self.superclass.name} child"
end
def instance
@instance ||= new
end
def respond_to?(*args)
super || instance.respond_to?(*args)
end
def configure(&block)
class_eval(&block)
end
protected
2010-12-19 15:58:59 +00:00
def method_missing(*args, &block)
instance.send(*args, &block)
end
end
end
end
end