The TaskManager module is a mixin for managing tasks.
| Public Methods |
| [] |
Find a matching task for task_name.
|
| clear |
Clear all tasks in this application.
|
| create_rule |
|
| current_scope |
Return the list of scope names currently active in the task manager.
|
| define_task |
|
| enhance_with_matching_rule |
If a rule can be found that matches the task name, enhance the task with
the prerequisites and actions from the rule. Set the source attribute of
the task appropriately for the rule. Return the enhanced task or nil of no
rule was found.
|
| in_namespace |
Evaluate the block in a nested namespace named name. Create an
anonymous namespace if name is nil.
|
| intern |
Lookup a task. Return an existing task if found, otherwise create a task of
the current type.
|
| lookup |
Lookup a task, using scope and the scope hints in the task name. This
method performs straight lookups without trying to synthesize file tasks or
rules. Special scope names (e.g. ’^’) are recognized. If no
scope argument is supplied, use the current scope. Return nil if the task
cannot be found.
|
| new |
|
| resolve_args |
Resolve the arguments for a task/rule. Returns a triplet of [task_name,
arg_name_list, prerequisites].
|
| synthesize_file_task |
|
| tasks |
List of all defined tasks in this application.
|
| Private Methods |
| attempt_rule |
Attempt to create a rule given the list of prerequisites.
|
| generate_name |
Generate an anonymous namespace name.
|
| lookup_in_scope |
Lookup the task name
|
| make_sources |
Make a list of sources from the list of file name extensions / translation
procs.
|
<code/>and<pre/>for code samples.