# File lib/rake.rb, line 1803 1803: def enhance_with_matching_rule(task_name, level=0) 1804: fail Rake::RuleRecursionOverflowError, 1805: "Rule Recursion Too Deep" if level >= 16 1806: @rules.each do |pattern, extensions, block| 1807: if md = pattern.match(task_name) 1808: task = attempt_rule(task_name, extensions, block, level) 1809: return task if task 1810: end 1811: end 1812: nil 1813: rescue Rake::RuleRecursionOverflowError => ex 1814: ex.add_target(task_name) 1815: fail ex 1816: end