class Generator::Generator

Public Class Methods

new() click to toggle source
# File lib/generator/generator.rb, line 11
def initialize
  @generators = [ StructureGenerator.new,
                  CoffeeGenerator.new,
                  SassGenerator.new,
                  HamlGenerator.new ]
end

Public Instance Methods

dev_root() click to toggle source
# File lib/generator/generator.rb, line 22
def dev_root
  return 'dev_root'
end
generate(path=nil) click to toggle source
# File lib/generator/generator.rb, line 38
def generate(path=nil)
  if path
    files = [File.dirname(path)]
  else
    files = projects_folder
  end

  files.each do |project_folder|
    next unless File.directory? project_folder
    next if project_folder.include? 'shared'

    project_name = project_folder.split('/')[-1]
    project_output_folder = project_web_folder(project_name)

    puts "generating: \e[32m#{project_output_folder}\e[0m"
    @generators.each do |generator|
      generator.generate(project_folder, project_output_folder)
    end
  end
end
project_name(project_folder) click to toggle source
# File lib/generator/generator.rb, line 30
def project_name project_folder
  project_folder.split('/')[-1]
end
project_web_folder(project) click to toggle source
# File lib/generator/generator.rb, line 34
def project_web_folder project
  "#{web_root}/#{project}"
end
projects_folder() click to toggle source
# File lib/generator/generator.rb, line 26
def projects_folder
  Dir.glob("#{dev_root}/*")
end
web_root() click to toggle source
# File lib/generator/generator.rb, line 18
def web_root
  return 'web_root'
end