class Rails::Railtie::Configuration

def self.eager_load_namespaces # :nodoc:

:nodoc:
Expose the eager_load_namespaces at "module" level for convenience.
def self.eager_load_namespaces # :nodoc:
  @@eager_load_namespaces ||= []
end

def after_initialize(&block)

Last configurable block to run. Called after frameworks initialize.
def after_initialize(&block)
  ActiveSupport.on_load(:after_initialize, yield: true, &block)
end

def app_generators

application overwrites them.
Values set on app_generators will become defaults for application, unless

This allows you to modify application's generators from Railties.
def app_generators
  @@app_generators ||= Rails::Configuration::Generators.new
  yield(@@app_generators) if block_given?
  @@app_generators
end

def app_middleware

created
application once it is defined and the default_middlewares are
All operations you run on the app_middleware will be replayed on the

This allows you to modify the application's middlewares from Engines.
def app_middleware
  @@app_middleware ||= Rails::Configuration::MiddlewareStackProxy.new
end

def before_configuration(&block)

First configurable block to run. Called before any initializers are run.
def before_configuration(&block)
  ActiveSupport.on_load(:before_configuration, yield: true, &block)
end

def before_eager_load(&block)

set to false.
Third configurable block to run. Does not run if +config.eager_load+
def before_eager_load(&block)
  ActiveSupport.on_load(:before_eager_load, yield: true, &block)
end

def before_initialize(&block)

Second configurable block to run. Called before frameworks initialize.
def before_initialize(&block)
  ActiveSupport.on_load(:before_initialize, yield: true, &block)
end

def eager_load_namespaces

All namespaces that are eager loaded
def eager_load_namespaces
  @@eager_load_namespaces ||= []
end

def initialize

def initialize
  @@options ||= {}
end

def method_missing(name, *args, &blk)

def method_missing(name, *args, &blk)
  if name.end_with?("=")
    @@options[:"#{name[0..-2]}"] = args.first
  elsif @@options.key?(name)
    @@options[name]
  else
    super
  end
end

def respond_to?(name, include_private = false)

def respond_to?(name, include_private = false)
  super || @@options.key?(name.to_sym)
end

def to_prepare(&blk)

Rails::Railtie subclasses.
Defines generic callbacks to run before #after_initialize. Useful for
def to_prepare(&blk)
  to_prepare_blocks << blk if blk
end

def to_prepare_blocks

Array of callbacks defined by #to_prepare.
def to_prepare_blocks
  @@to_prepare_blocks ||= []
end

def watchable_dirs

be an array of extensions to match in each directory.
The key of the hashes should be directories and the values should
Add directories that should be watched for change.
def watchable_dirs
  @@watchable_dirs ||= {}
end

def watchable_files

Add files that should be watched for change.
def watchable_files
  @@watchable_files ||= []
end