class Generator::Base
Public Class Methods
cache(file)
click to toggle source
# File lib/generator/base.rb, line 43 def self.cache(file) @@FILE_CHECKSUMS[file] = self.checksum(file) end
changed?(file)
click to toggle source
# File lib/generator/base.rb, line 38 def self.changed?(file) return true unless @@FILE_CHECKSUMS.has_key? file @@FILE_CHECKSUMS[file] != self.checksum(file) end
checksum(file)
click to toggle source
# File lib/generator/base.rb, line 34 def self.checksum(file) Digest::MD5.hexdigest(File.read(file)) end
Public Instance Methods
compile(input)
click to toggle source
# File lib/generator/base.rb, line 24 def compile(input) input end
compile_file(input_file, *args)
click to toggle source
# File lib/generator/base.rb, line 11 def compile_file(input_file, *args) return unless self.class.changed? (input_file) #if args[0] isset, it is a file, the output file if args.length > 0 write(args[0], compile(File.read(input_file), *args)) else compile(input_file, *args) end self.class.cache(input_file) end
generate(input_folder, output_folder)
click to toggle source
# File lib/generator/base.rb, line 7 def generate(input_folder, output_folder) end
write(file, content)
click to toggle source
# File lib/generator/base.rb, line 28 def write(file, content) File.open(file, "w") do |f| f.write content end end