    # File temp/xpath.rb, line 45
                    def XPath::each element, path=nil, namespaces=nil, variables={}, &block
          raise "The namespaces argument, if supplied, must be a hash object." unless namespaces.nil? or namespaces.kind_of?(Hash)
          raise "The variables argument, if supplied, must be a hash object." unless variables.kind_of?(Hash)
                            parser = XPathParser.new
                            parser.namespaces = namespaces
                            parser.variables = variables
                            path = "*" unless path
                            element = [element] unless element.kind_of? Array
                            parser.parse(path, element).each( &block )
                    end