Class: Legion::CLI::LexGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/legion/cli/lex_command.rb

Overview

Thin generator class that wraps the template logic

Instance Method Summary collapse

Constructor Details

#initialize(name, vars, options, gem_name: nil, template: 'basic') ⇒ LexGenerator

Returns a new instance of LexGenerator.



464
465
466
467
468
469
470
471
# File 'lib/legion/cli/lex_command.rb', line 464

def initialize(name, vars, options, gem_name: nil, template: 'basic')
  @name      = name
  @vars      = vars
  @options   = options
  @gem_name  = gem_name || "lex-#{name}"
  @target    = @gem_name
  @template  = template || 'basic'
end

Instance Method Details

#generate(out) ⇒ Object



473
474
475
476
477
478
# File 'lib/legion/cli/lex_command.rb', line 473

def generate(out)
  create_structure(out)
  apply_template_overlay(out) unless @template == 'basic'
  init_git(out) if @options[:git_init]
  run_bundle(out) if @options[:bundle_install]
end