diff options
Diffstat (limited to 'www/wiki/includes/search/SearchNearMatchResultSet.php')
-rw-r--r-- | www/wiki/includes/search/SearchNearMatchResultSet.php | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/www/wiki/includes/search/SearchNearMatchResultSet.php b/www/wiki/includes/search/SearchNearMatchResultSet.php new file mode 100644 index 00000000..31417974 --- /dev/null +++ b/www/wiki/includes/search/SearchNearMatchResultSet.php @@ -0,0 +1,30 @@ +<?php +/** + * A SearchResultSet wrapper for SearchNearMatcher + */ +class SearchNearMatchResultSet extends SearchResultSet { + private $fetched = false; + + /** + * @param Title|null $match Title if matched, else null + */ + public function __construct( $match ) { + $this->result = $match; + } + + public function numRows() { + return $this->result ? 1 : 0; + } + + public function next() { + if ( $this->fetched || !$this->result ) { + return false; + } + $this->fetched = true; + return SearchResult::newFromTitle( $this->result, $this ); + } + + public function rewind() { + $this->fetched = false; + } +} |