Class: OrigenAppGenerators::Base
- Inherits:
-
Origen::CodeGenerators::Base
- Object
- Origen::CodeGenerators::Base
- OrigenAppGenerators::Base
- Includes:
- Origen::Utility::InputCapture
- Defined in:
- lib/origen_app_generators/base.rb
Overview
This is the base generator used by all generators in this application
Direct Known Subclasses
Instance Method Summary collapse
- #get_common_user_input ⇒ Object
- #get_lastest_origen_version ⇒ Object
- #set_source_paths ⇒ Object
-
#set_type ⇒ Object
Just makes the type (:plugin or :application) available to all templates.
Instance Method Details
#get_common_user_input ⇒ Object
28 29 30 |
# File 'lib/origen_app_generators/base.rb', line 28 def get_common_user_input get_name_and_namespace end |
#get_lastest_origen_version ⇒ Object
32 33 34 |
# File 'lib/origen_app_generators/base.rb', line 32 def get_lastest_origen_version @latest_origen_version = (Gems.info 'origen')['version'] end |
#set_source_paths ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/origen_app_generators/base.rb', line 8 def set_source_paths # The base Origen generator puts the Origen core directory on the source path, in retrospect this # was a bad idea and makes for hard to debug errors if an app generator resolves a template from # outside of this app. # So to keep things sane remove any inherited source paths. self.class.source_paths.pop until self.class.source_paths.empty? klass = self.class until klass == OrigenAppGenerators::Base dir = klass.to_s.sub('OrigenAppGenerators::', '').split('::').map(&:underscore).join('/') dir = File.("../../../templates/app_generators/#{dir}", __FILE__) self.class.source_paths << dir if File.exist?(dir) klass = klass.superclass end end |
#set_type ⇒ Object
Just makes the type (:plugin or :application) available to all templates
24 25 26 |
# File 'lib/origen_app_generators/base.rb', line 24 def set_type @type = type end |