class Rake::FileTask

  1. lib/rake/file_task.rb
Parent: 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).

Methods

Private Class

  1. scope_name

Public Instance

  1. needed?
  2. timestamp

Private Instance

  1. out_of_date?

Public Instance methods

needed? ()

Is this file task needed? Yes if it doesn’t exist, or if its time stamp is out of date.

[show source]
    # File lib/rake/file_task.rb, line 15
15:     def needed?
16:       ! File.exist?(name) || out_of_date?(timestamp)
17:     end
timestamp ()

Time stamp for file task.

[show source]
    # File lib/rake/file_task.rb, line 20
20:     def timestamp
21:       if File.exist?(name)
22:         File.mtime(name.to_s)
23:       else
24:         Rake::EARLY
25:       end
26:     end

Private Instance methods

out_of_date? (stamp)

Are there any prerequisites with a later time than the given time stamp?

[show source]
    # File lib/rake/file_task.rb, line 31
31:     def out_of_date?(stamp)
32:       @prerequisites.any? { |n| application[n, @scope].timestamp > stamp}
33:     end

Private Class methods

scope_name (scope, task_name)

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.

[show source]
    # File lib/rake/file_task.rb, line 41
41:       def scope_name(scope, task_name)
42:         task_name
43:       end