lib/controller.rb in cuco-0.1.0 vs lib/controller.rb in cuco-0.1.1

- old
+ new

@@ -38,10 +38,21 @@ files.each { |filename| file_run(filename, type) } end def file_run(pattern, type = nil) puts "*** file_run(#{pattern}, #{type})" if debug - G.script.__rules.select { |rule| match_run(rule, pattern) } + rules = find_rules(pattern, type) + rules.each { |rule| match_run(rule, pattern) } + end + + private + + def find_rules(pattern, type) + puts "*** find_rules(#{pattern}, #{type})" if debug + G.script.__rules.reverse.select { |rule| + pattern.match(rule.pattern) && + (rule.event_type.nil? || rule.event_type == type) + } end def match_run(rule, pattern) md = pattern.match(rule.pattern) puts "*** match_run #{rule}" if debug