summaryrefslogtreecommitdiff
path: root/www/wiki/includes/search/SearchNearMatchResultSet.php
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/includes/search/SearchNearMatchResultSet.php')
-rw-r--r--www/wiki/includes/search/SearchNearMatchResultSet.php30
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;
+ }
+}