public function prune( &$maxsize, &$maxdepth, &$log ) { if ( $maxsize >= $this->getSize() ) { $maxsize = $maxsize - $this->getSize(); return $this; } elseif ( $maxsize <= 0 ) { $log[] = $this->getQueryString(); $result = new SMWThingDescription(); } else { $result = new SMWClassDescription( array_slice( $this->m_diWikiPages, 0, $maxsize ) ); $rest = new SMWClassDescription( array_slice( $this->m_diWikiPages, $maxsize ) ); $log[] = $rest->getQueryString(); $maxsize = 0; } $result->setPrintRequests( $this->getPrintRequests() ); return $result; }