# File lib_core/rucy/request.rb, line 34
    def self.scan(path)
      if (path.empty? || path == '/') then
        yield('', '')
        return
      end

      if (path !~ %"^/") then
        raise "not a path: #{path.inspect}"
      end
      path_list = path.split(%"/", -1)
      path_info_list = Array.new
      until (path_list.empty?)
        if (path_list.length == 1) then
          script_name = ''
        else
          script_name = path_list.join('/')
        end
        if (path_info_list.empty?) then
          path_info = ''
        else
          path_info = '/' + path_info_list.join('/')
        end
        yield(script_name, path_info)
        path_info_list.unshift(path_list.pop)
      end

      nil
    end