Method: Train::Platforms::Detect::Scanner#scan_children

Defined in:
lib/train/platforms/detect/scanner.rb

#scan_children(parent) ⇒ Object



44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/train/platforms/detect/scanner.rb', line 44

def scan_children(parent)
  parent.children.each do |plat, condition|
    next unless instance_eval(&plat.detect) == true

    if plat.class == Train::Platforms::Platform
      return plat if condition.empty? || check_condition(condition)
    elsif plat.class == Train::Platforms::Family
      plat = scan_family_children(plat)
      return plat unless plat.nil?
    end
  end

  nil
end