Class: DirectedGraph::JobRunner
- Inherits:
-
Object
- Object
- DirectedGraph::JobRunner
- Includes:
- TSort
- Defined in:
- lib/directed_graph/job_runner.rb
Class Method Summary collapse
Instance Method Summary collapse
- #add(name, dependencies = []) ⇒ Object
-
#initialize ⇒ JobRunner
constructor
A new instance of JobRunner.
- #tsort_each_child(node, &block) ⇒ Object
- #tsort_each_node(&block) ⇒ Object
Constructor Details
#initialize ⇒ JobRunner
Returns a new instance of JobRunner.
13 14 15 |
# File 'lib/directed_graph/job_runner.rb', line 13 def initialize @jobs = Hash.new{|h,k| h[k] = []} end |
Class Method Details
Instance Method Details
#add(name, dependencies = []) ⇒ Object
17 18 19 |
# File 'lib/directed_graph/job_runner.rb', line 17 def add(name, dependencies=[]) @jobs[name] = dependencies end |
#tsort_each_child(node, &block) ⇒ Object
25 26 27 |
# File 'lib/directed_graph/job_runner.rb', line 25 def tsort_each_child(node, &block) @jobs[node].each(&block) if @jobs.has_key?(node) end |
#tsort_each_node(&block) ⇒ Object
21 22 23 |
# File 'lib/directed_graph/job_runner.rb', line 21 def tsort_each_node(&block) @jobs.each_key(&block) end |