Method: BaseChip::Taskable::InstanceMethods#deep_depends
- Defined in:
- lib/base_chip/taskable.rb
#deep_depends ⇒ Object
nonportable but helpful to be here:
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/base_chip/taskable.rb', line 53 def deep_depends # FIXME circular dependencies return @deep_depends if @deep_depends return @deep_depends = [] unless self.depends @deep_depends = [] self.depends.each do |depend| depend2 = depend.to_s.split(/:/) while depend2.size < 3 depend2.unshift nil end depend2[0] ||= self.block .name.to_s depend2[1] ||= self.configuration.name.to_s @deep_depends += self.project.dereference_workload([depend2.join(':')]) end @deep_depends.each do |d| d.deep_configure @deep_depends += d.deep_depends end @deep_depends.uniq! @deep_depends end |