Class: Rake::Funnel::Support::AssemblyVersionWriter

Inherits:
Object
  • Object
show all
Includes:
InstantiateSymbol
Defined in:
lib/rake/funnel/support/assembly_version_writer.rb

Instance Method Summary collapse

Methods included from InstantiateSymbol

included

Constructor Details

#initialize(type = :from_version_files, args = {}) ⇒ AssemblyVersionWriter

Returns a new instance of AssemblyVersionWriter.



14
15
16
# File 'lib/rake/funnel/support/assembly_version_writer.rb', line 14

def initialize(type = :from_version_files, args = {})
  @type = create(type, args)
end

Instance Method Details

#write(target_path, languages = []) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/rake/funnel/support/assembly_version_writer.rb', line 18

def write(target_path, languages = [])
  @type.each do |info|
    source = info[:source]
    version_info = info[:version_info]

    [languages].flatten.each do |language|
      target = target_path.call(language, version_info, source)

      contents = evaluate_erb(language, version_info, target)

      Rake.rake_output_message("Writing #{target}")
      File.write(target, contents)
    end
  end
end