# File rexml/xpath_parser.rb, line 112 def GenericExpr(path, nodeset, regex, method, &block) rest, results = method.call( path, nodeset ) #puts "First #{method} call, results are #{puta results}" if DEBUG #puts "'#{rest}' != '#{path}'" if DEBUG if rest != path maps = [] while rest =~ regex #puts "LOOKED FOR #{regex.inspect}; REST IS #{rest}" if DEBUG op = $1 rest = $' #puts "Calling #{method} with #{rest}" if DEBUG rest, res = method.call( rest, nodeset ) #puts "Results #{method} are #{puta res}" if DEBUG maps << res #puts "MAPS IS NOW #{puta maps}" if DEBUG end maps.each { |map| results = yield( results, op, map ) } #puts "Results after join are #{puta results}" if DEBUG end [rest, results] end