Class: Jets::Autoloaders::Gem
- Inherits:
-
Object
- Object
- Jets::Autoloaders::Gem
- Defined in:
- lib/jets/autoloaders/gem.rb
Overview
for jets gem itself
Instance Method Summary collapse
- #autoloader ⇒ Object
-
#do_not_eager_load ⇒ Object
For jets/info.rb see Jets::Info property Middleware for why we do not eager load.
- #ignore_paths ⇒ Object
- #lib ⇒ Object
Instance Method Details
#autoloader ⇒ Object
18 19 20 21 22 23 24 25 26 27 |
# File 'lib/jets/autoloaders/gem.rb', line 18 def autoloader loader = Zeitwerk::Loader.new loader.tag = "jets.gem" loader.inflector = GemInflector.new loader.push_dir(lib) loader.do_not_eager_load(do_not_eager_load) loader.ignore(ignore_paths) # loader.ignore requires full dir or path # loader.log! loader end |
#do_not_eager_load ⇒ Object
For jets/info.rb see Jets::Info property Middleware for why we do not eager load.
34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/jets/autoloaders/gem.rb', line 34 def do_not_eager_load paths = %w[ jets/info.rb jets/spec_helpers jets/spec_helpers.rb jets/commands jets/commands.rb jets/generators jets/generators.rb ] paths.map { |path| "#{lib}/#{path}" } # do_not_eager_load requires full dir or path end |
#ignore_paths ⇒ Object
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/jets/autoloaders/gem.rb', line 47 def ignore_paths # commands paths = %w[ jets/application/dummy_config.rb jets/application/dummy_erb_compiler.rb jets/builders/rackup_wrappers jets/builders/templates jets/commands/templates jets/controller/middleware/webpacker_setup.rb jets/core_ext jets/core_ext.rb jets/generator jets/overrides jets/ruby_version_check.rb jets/cli.rb jets/commands.rb jets/generators/jets/app/ignore jets/tasks.rb ] paths.map { |path| "#{lib}/#{path}" } end |
#lib ⇒ Object
29 30 31 |
# File 'lib/jets/autoloaders/gem.rb', line 29 def lib File.("#{__dir__}/../..") # jets/lib end |