# File rexml/xpath_parser.rb, line 543 def join( arg1, op, arg2=nil) return nil unless arg1 and op op, arg2 = arg2, op unless arg2 #rv = [] #arg1 = [arg1] unless arg1.kind_of? Array arg2 = [arg2] unless arg2.kind_of? Array if arg1.size == arg2.size arg1.each_index { |ind| arg1[ind] = yield(arg1[ind], op, arg2[ind]) } #elsif arg1.size < arg2.size #arg2.each { |item| rv << yield(arg1[0], op, item) } else #puts "ARG1.size = #{arg1.size}, ARG2.size = #{arg2.size}" if DEBUG #puts "ARG2 is #{puta arg2}" if DEBUG arg1.collect! { |item| yield(item, op, arg2[0]) } end arg1 end