# File rexml/xpath_parser.rb, line 289 def FunctionCall funcname, rest, nodeset #puts "FunctionCall: #{funcname}(#{rest})" if DEBUG funcname.gsub!(/-/, '_') path, arguments = parse_args rest #puts "ARGUMENTS SIZE = #{arguments.size}" if DEBUG args = arguments.collect {|arg| OrExpr( arg, nodeset )[1] } results = [] if args.size > 0 #puts "NODESET IS ::: #{nodeset.size}" if DEBUG #puts "CURARGS IS ::: #{args.size}" if DEBUG nodeset.each_index do |index| #puts "1) Calling #{funcname}(#{args.join ', '}) with #{args.size} args" if DEBUG results << Functions.send( funcname, *args ) end else nodeset.each_index do |index| #puts "\n2) Calling #{funcname}()" if DEBUG results << Functions.send( funcname ) end end [path, results] end