class ComponentGeneratorGenerator

Attributes

class_name[R]
generator_path[R]
generator_type[R]
name[R]

Public Class Methods

new(runtime_args, runtime_options = {}) click to toggle source
Calls superclass method RubiGen::Base.new
# File rubygems_generators/component_generator/component_generator_generator.rb, line 8
def initialize(runtime_args, runtime_options = {})
  super
  usage if args.empty?
  @name           = args.shift
  @class_name     = "#{name}_generator".camelize
  @generator_type = args.shift # optional
  @generator_path = @generator_type ? "#{generator_type}_generators" : "generators"
  extract_options
end

Public Instance Methods

generator() click to toggle source
# File rubygems_generators/component_generator/component_generator_generator.rb, line 34
def generator
  case (generator_type.to_sym rescue nil)
  when :rails
    "rails_generator.rb"
  else
    "generator.rb"
  end
end
manifest() click to toggle source
# File rubygems_generators/component_generator/component_generator_generator.rb, line 18
def manifest
  path = "#{generator_path}/#{name}"
  record do |m|
    # Ensure appropriate generators folder exists
    m.directory "#{path}/templates"
    m.directory "test"

    # Generator stub
    m.template generator,              "#{path}/#{name}_generator.rb"
    m.template "test.rb",                   "test/test_#{name}_generator.rb"
    m.file     "test_generator_helper.rb",  "test/test_generator_helper.rb"
    m.file     "usage",                     "#{path}/USAGE"
    m.readme   'readme'
  end
end
superclass_name() click to toggle source
# File rubygems_generators/component_generator/component_generator_generator.rb, line 43
def superclass_name
  case (generator_type.to_sym rescue nil)
  when :rails
    "Rails::Generator::NamedBase"
  else
    "RubiGen::Base"
  end
end
superclass_requirement() click to toggle source
# File rubygems_generators/component_generator/component_generator_generator.rb, line 52
def superclass_requirement
  case (generator_type.to_sym rescue nil)
  when :rails
    ["rails_generator"]
  else
    []
  end
end

Protected Instance Methods

add_options!(opts) click to toggle source
# File rubygems_generators/component_generator/component_generator_generator.rb, line 70
def add_options!(opts)
  # opts.separator ''
  # opts.separator 'Options:'
  # opts.on("-a", "--author=\"Your Name\"", String,
  #         "Generated app file will include your name.",
  #         "Default: none") { |o| options[:author] = 0 }
end
banner() click to toggle source
extract_options() click to toggle source
# File rubygems_generators/component_generator/component_generator_generator.rb, line 78
def extract_options
end