public function flush($delay = 0)
 {
     if ($this->logging) {
         $start = microtime(true);
         $name = 'flush';
         $arguments = array($delay);
     }
     list($_delay) = array($delay);
     $result = parent::flush($_delay);
     list($delay) = array($_delay);
     if ($this->logging) {
         $time = microtime(true) - $start;
         $this->calls[] = (object) compact('start', 'time', 'name', 'arguments', 'result');
     }
     return $result;
 }