Sha256: 4efcb03161dcdff489f0fa5177d51d20ddd04540882ce97880c563cc551f8730

Contents?: true

Size: 740 Bytes

Versions: 1

Compression:

Stored size: 740 Bytes

Contents

require "sanctuary"

module Sanctuary
  module Planter
    module Generator
      def self.generate_file_from_plant(plant)
        home_dir = Sanctuary::HOME_DIR
        template_file = IO.read(home_dir + "/" + plant.plant_template)
        template = ERB.new(template_file, nil, '-%<>')
        local_binding = binding
        local_binding.local_variable_set(:name, plant.name)
        local_binding.local_variable_set(:fields, plant.fields)
        local_binding.local_variable_set(:methods, plant.methods)
        puts "Generated #{plant.name}"
        File.open(plant.name + "." + plant.plant_template.split("/").last.split(".")[1], "w") do |f|
          f.write(template.result(local_binding))
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
sanctuary-planter-0.1.3 lib/sanctuary/planter/generator.rb