Class: Gettc::Generator
- Inherits:
-
Object
- Object
- Gettc::Generator
- Defined in:
- lib/gettc/generate.rb
Instance Method Summary collapse
- #generate(prob) ⇒ Object
-
#initialize(config_dir, target_dir) ⇒ Generator
constructor
A new instance of Generator.
Constructor Details
#initialize(config_dir, target_dir) ⇒ Generator
Returns a new instance of Generator.
50 51 52 53 54 55 56 57 58 |
# File 'lib/gettc/generate.rb', line 50 def initialize(config_dir, target_dir) @source_dir = File.join(config_dir, "template") raise SourceDirNotExist.new(@source_dir) unless File.directory?(@source_dir) @target_dir = target_dir raise TargetDirNotExist.new(@target_dir) unless File.directory?(@target_dir) load_engines(File.join(config_dir, "include")) end |
Instance Method Details
#generate(prob) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/gettc/generate.rb', line 60 def generate(prob) @prob = prob @problem_dir = File.join(@target_dir, prob.name) raise ProblemDirExists.new(@problem_dir) if File.exists?(@problem_dir) FileUtils.mkdir(@problem_dir) method_sig = @prob.definitions["Method signature"] if method_sig.nil? $stderr.puts "[Warning] No definition for method signature found" else vars = parse_method_signature(method_sig) func = vars.shift end @context = binding walk(@source_dir, @problem_dir) end |