Sha256: 8988866da58add7dd51e4e017719602303aab4c3828d1acdaedaa457d02a46e3
Contents?: true
Size: 1.22 KB
Versions: 14
Compression:
Stored size: 1.22 KB
Contents
require 'rake/tasklib' module Rake module Funnel module Tasks class AssemblyVersion < Rake::TaskLib include Rake::Funnel::Support attr_accessor :name, :language, :source, :source_args, :target_path def initialize(*args, &task_block) setup_ivars(args) define(args, &task_block) end def next_to_source(language, _version_info, source) File.join(File.dirname(source), "VersionInfo.#{language}") end private def setup_ivars(args) @name = args.shift || :version @language = :cs @source = :FromVersionFiles @source_args = {} @target_path = proc { |language, version_info, source| next_to_source(language, version_info, source) } end def define(args, &task_block) desc 'Generate version info' unless Rake.application.last_description task(name, *args) do |_, task_args| task_block.call(*[self, task_args].slice(0, task_block.arity)) if task_block writer = AssemblyVersionWriter.new(source, source_args) writer.write(target_path, language) end end end end end end
Version data entries
14 entries across 14 versions & 1 rubygems