123456789_123456789_123456789_123456789_123456789_

Class: Rake::FileCreationTask

Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
self, FileTask, Task
Instance Chain:
self, FileTask, Task
Inherits: Rake::FileTask
Defined in: lib/rake/file_creation_task.rb

Overview

A FileCreationTask is a file task that when used as a dependency will be needed if and only if the file has not been created. Once created, it is not re-triggered if any of its dependencies are newer, nor does trigger any rebuilds of tasks that depend on it whenever it is updated.

Class Method Summary

FileTask - Inherited

.scope_name

Apply the scope to the task name according to the rules for this kind of task.

Task - Inherited

.[]

Return a task with the given name.

.clear

Clear the task list.

.create_rule

Define a rule for synthesizing tasks.

.define_task

Define a task given args and an option block.

.new

Create a task named task_name with no actions or prerequisites.

.scope_name

Apply the scope to the task name according to the rules for this kind of task.

.task_defined?

TRUE if the task name is already defined.

.tasks

List of all defined tasks.

Instance Attribute Summary

FileTask - Inherited

#needed?

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

Task - Inherited

#actions

List of actions attached to a task.

#already_invoked

Has this task already been invoked? Already invoked tasks will be skipped unless you reenable them.

#application

Application owning this task.

#comment

First line (or sentence) of all comments.

#locations

File/Line locations of each of the task definitions for this task (only valid if the task was defined with the detect location option set).

#needed?

Is this task needed?

#prereqs
#prerequisites

List of prerequisites for a task.

#scope

Array of nested namespaces names used for task lookup by this task.

#sources,
#sources=

List of sources for task.

#comment=

Instance Method Summary

FileTask - Inherited

#timestamp

Time stamp for file task.

#out_of_date?

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

Task - Inherited

#add_description

Add a description to the task.

#all_prerequisite_tasks

List of all unique prerequisite tasks including prerequisite tasks' prerequisites.

#arg_names

Name of arguments for this task.

#clear

Clear the existing prerequisites, actions, comments, and arguments of a rake task.

#clear_actions

Clear the existing actions on a rake task.

#clear_args

Clear the existing arguments on a rake task.

#clear_comments

Clear the existing comments on a rake task.

#clear_prerequisites

Clear the existing prerequisites of a rake task.

#enhance

Enhance a task with prerequisites or actions.

#execute

Execute the actions associated with this task.

#full_comment

Full collection of comments.

#investigation

Return a string describing the internal state of a task.

#invoke

Invoke the task if it is needed.

#name

Name of the task, including any namespace qualifiers.

#prerequisite_tasks

List of prerequisite tasks.

#reenable

Reenable the task, allowing its tasks to be executed if the task is invoked again.

#set_arg_names

Set the names of the arguments for this task.

#source

First source from a rule (nil if no sources).

#timestamp

Timestamp for this task.

#to_s

Return task name.

#invoke_with_call_chain

Same as invoke, but explicitly pass a call chain to detect circular dependencies.

#first_sentence

Get the first sentence in a string.

#format_trace_flags

Format the trace flags for display.

#transform_comments

Transform the list of comments as specified by the block and join with the separator.

#arg_description

Argument description (nil if none).

#inspect,
#invoke_prerequisites

Invoke all the prerequisites of a task.

#invoke_prerequisites_concurrently

Invoke all the prerequisites of a task in parallel.

#name_with_args

Name of task with argument list description.

#collect_prerequisites, #add_chain_to, #add_comment, #lookup_prerequisite

Constructor Details

This class inherits a constructor from Rake::Task

Instance Attribute Details

#needed?Boolean (readonly)

Is this file task needed? Yes if it doesn't exist.

[ GitHub ]

  
# File 'lib/rake/file_creation_task.rb', line 14

def needed?
  !File.exist?(name)
end

Instance Method Details

#timestamp

Time stamp for file creation task. This time stamp is earlier than any other time stamp.

[ GitHub ]

  
# File 'lib/rake/file_creation_task.rb', line 20

def timestamp
  Rake::EARLY
end