Module: RubiGen::Lookup

Defined in:
lib/rubigen/lookup.rb

Overview

Generator lookup is managed by a list of sources which return specs describing where to find and how to create generators. This module provides class methods for manipulating the source list and looking up generator specs, and an #instance wrapper for quickly instantiating generators by name.

A spec is not a generator: it’s a description of where to find the generator and how to create it. A source is anything that yields generators from #each. PathSource and GemGeneratorSource are provided.

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



50
51
52
53
# File 'lib/rubigen/lookup.rb', line 50

def self.included(base)
  base.extend(ClassMethods)
  # base.use_component_sources!  # TODO is this required since it has no scope/source context
end

Instance Method Details

#instance(generator_name, args, runtime_options = {}) ⇒ Object

Convenience method to instantiate another generator.



56
57
58
# File 'lib/rubigen/lookup.rb', line 56

def instance(generator_name, args, runtime_options = {})
  self.class.active.instance(generator_name, args, runtime_options)
end