Sha256: 3690460b804c0f4b2e5cdfaa2a078332cbf5bc07271df5fa7b6f87da3b1cf9c3
Contents?: true
Size: 1.28 KB
Versions: 1
Compression:
Stored size: 1.28 KB
Contents
require 'rake/task.rb' require 'rake/early_time' module Rake # ######################################################################### # A FileTask is a task that includes time based dependencies. If any of a # FileTask's prerequisites have a timestamp that is later than the file # represented by this task, then the file must be rebuilt (using the # supplied actions). # class FileTask < Task # Is this file task needed? Yes if it doesn't exist, or if its time stamp # is out of date. def needed? ! File.exist?(name) || out_of_date?(timestamp) end # Time stamp for file task. def timestamp if File.exist?(name) File.mtime(name.to_s) else Rake::EARLY end end private # Are there any prerequisites with a later time than the given time stamp? def out_of_date?(stamp) @prerequisites.any? { |n| application[n].timestamp > stamp} end # ---------------------------------------------------------------- # Task class methods. # class << self # Apply the scope to the task name according to the rules for this kind # of task. File based tasks ignore the scope when creating the name. def scope_name(scope, task_name) task_name end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
jimweirich-rake-0.8.5 | lib/rake/file_task.rb |