def explain
      explanation = operation.selector.dup
      hint = explanation["$hint"]
      sort = explanation["$orderby"]
      max_scan = explanation["$maxScan"]
      explanation = {
        "$query" => selector,
        "$explain" => true,
      }
      explanation["$orderby"] = sort if sort
      explanation["$hint"] = hint if hint
      explanation["$maxScan"] = max_scan if max_scan
      Query.new(collection, explanation).limit(-(operation.limit.abs)).each { |doc| return doc }
    end
def explain
      explanation = operation.selector.dup
      hint = explanation["$hint"]
      sort = explanation["$orderby"]
      max_scan = explanation["$maxScan"]
      explanation = {
        "$query" => selector,
        "$explain" => true,
      }
      explanation["$orderby"] = sort if sort
      explanation["$hint"] = hint if hint
      explanation["$maxScan"] = max_scan if max_scan
      Query.new(collection, explanation).limit(-(operation.limit.abs)).each { |doc| return doc }
    end
Explain the current query.

 @example Explain the query.
   db[:people].find.explain

 @return [ Hash ] The explain document.

 @since 1.0.0