module AwesomeLoader
The module that holds the awesomeness.
Constants
- VERSION
Library version
Public Class Methods
autoload(root_depth: Autoloader::DEFAULT_ROOT_DEPTH, root_path: Dir.pwd, root_module: Object, eager_load: false, &block)
click to toggle source
Set up an AwesomeLoader::Autoloader
instance.
AwesomeLoader.autoload root_depth: 2 do paths %w(app routes ** *.rb), root_depth: 1 paths %w(app ** *.rb) end
@param root_depth [Integer] Tells AwesomeLoader
to start creating Modules for dirs after this level (default 2) @param root_path [String] Path to root of the application (default Dir.pwd) @param root_module [Module] Module to load your modules into (default Object). You'll probably always want to keep the default. @param eager_load [Boolean] Make sure all files get loaded by the time the block finishes (default false) @return [AwesomeLoader::Autoloader]
# File lib/awesome_loader/autoloader.rb, line 22 def self.autoload(root_depth: Autoloader::DEFAULT_ROOT_DEPTH, root_path: Dir.pwd, root_module: Object, eager_load: false, &block) autoloader = Autoloader.new(root_depth: root_depth, root_path: root_path, root_module: root_module, eager_load: eager_load) if block autoloader.instance_eval(&block) autoloader.finalize! end autoloader end