|
MediaWiki
master
|
Search suggestion sets. More...

Public Member Functions | |
| __construct (array $suggestions) | |
| Builds a new set of suggestions. More... | |
| append (SearchSuggestion $suggestion) | |
| Add a new suggestion at the end. More... | |
| appendAll (SearchSuggestionSet $set) | |
| Add suggestion set to the end of the current one. More... | |
| getBestScore () | |
| getSize () | |
| getSuggestions () | |
| Get the list of suggestions. More... | |
| getWorstScore () | |
| map ($callback) | |
| Call array_map on the suggestions array. More... | |
| prepend (SearchSuggestion $suggestion) | |
| Add a new suggestion at the top. More... | |
| rescore ($key) | |
| Move the suggestion at index $key to the first position. More... | |
| shrink ($limit) | |
| Remove any extra elements in the suggestions set. More... | |
Static Public Member Functions | |
| static | emptySuggestionSet () |
| static | fromStrings (array $titles) |
| Builds a new set of suggestion based on a string array. More... | |
| static | fromTitles (array $titles) |
| Builds a new set of suggestion based on a title array. More... | |
Private Attributes | |
| array | $pageMap = [] |
| SearchSuggestion[] | $suggestions = [] |
Search suggestion sets.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. http://www.gnu.org/copyleft/gpl.html A set of search suggestions. The set is always ordered by score, with the best match first.
Definition at line 27 of file SearchSuggestionSet.php.
| SearchSuggestionSet::__construct | ( | array | $suggestions | ) |
Builds a new set of suggestions.
NOTE: the array should be sorted by score (higher is better), in descending order. SearchSuggestionSet will not try to re-order this input array. Providing an unsorted input array is a mistake and will lead to unexpected behaviors.
| SearchSuggestion[] | $suggestions (must be sorted by score) |
Definition at line 50 of file SearchSuggestionSet.php.
References as.
| SearchSuggestionSet::append | ( | SearchSuggestion | $suggestion | ) |
Add a new suggestion at the end.
If the score of the new suggestion is greater than the worst one, the new suggestion score will be updated (worst - 1).
| SearchSuggestion | $suggestion |
Definition at line 84 of file SearchSuggestionSet.php.
References SearchSuggestion\getScore(), getSize(), SearchSuggestion\getSuggestedTitleID(), getWorstScore(), and SearchSuggestion\setScore().
Referenced by appendAll().
| SearchSuggestionSet::appendAll | ( | SearchSuggestionSet | $set | ) |
Add suggestion set to the end of the current one.
| SearchSuggestionSet | $set |
Definition at line 102 of file SearchSuggestionSet.php.
References append(), as, and getSuggestions().
|
static |
Definition at line 209 of file SearchSuggestionSet.php.
Referenced by SearchEngine\completionSearch(), SearchEngine\completionSearchWithVariants(), SearchSuggestionSetTest\testAppend(), SearchSuggestionSetTest\testInsertBest(), and SearchSuggestionSetTest\testShrink().
|
static |
Builds a new set of suggestion based on a string array.
NOTE: Suggestion scores will be generated.
| string[] | $titles |
Definition at line 198 of file SearchSuggestionSet.php.
References $suggestions, $title, $titles, SearchSuggestion\fromText(), and use.
Referenced by SearchEngine\completionSearchBackend(), and SearchEnginePrefixTest\testSearchBackend().
|
static |
Builds a new set of suggestion based on a title array.
Useful when using a backend that supports only Titles.
NOTE: Suggestion scores will be generated.
| Title[] | $titles |
Definition at line 182 of file SearchSuggestionSet.php.
References $suggestions, $title, $titles, SearchSuggestion\fromTitle(), and use.
Referenced by SearchEngine\completionSearchBackend().
| SearchSuggestionSet::getBestScore | ( | ) |
Definition at line 139 of file SearchSuggestionSet.php.
Referenced by prepend().
| SearchSuggestionSet::getSize | ( | ) |
Definition at line 159 of file SearchSuggestionSet.php.
| SearchSuggestionSet::getSuggestions | ( | ) |
Get the list of suggestions.
Definition at line 64 of file SearchSuggestionSet.php.
References $suggestions.
Referenced by appendAll().
| SearchSuggestionSet::getWorstScore | ( | ) |
Definition at line 149 of file SearchSuggestionSet.php.
Referenced by append().
| SearchSuggestionSet::map | ( | $callback | ) |
Call array_map on the suggestions array.
| callback | $callback |
Definition at line 73 of file SearchSuggestionSet.php.
Referenced by SearchEngine\extractTitles(), and SearchEngine\processCompletionResults().
| SearchSuggestionSet::prepend | ( | SearchSuggestion | $suggestion | ) |
Add a new suggestion at the top.
If the new suggestion score is lower than the best one its score will be updated (best + 1)
| SearchSuggestion | $suggestion |
Definition at line 122 of file SearchSuggestionSet.php.
References getBestScore(), SearchSuggestion\getScore(), getSize(), SearchSuggestion\getSuggestedTitleID(), and SearchSuggestion\setScore().
Referenced by SearchEngine\processCompletionResults(), and rescore().
| SearchSuggestionSet::rescore | ( | $key | ) |
Move the suggestion at index $key to the first position.
Definition at line 111 of file SearchSuggestionSet.php.
References prepend().
Referenced by SearchEngine\processCompletionResults().
| SearchSuggestionSet::shrink | ( | $limit | ) |
Remove any extra elements in the suggestions set.
| int | $limit | the max size of this set. |
Definition at line 167 of file SearchSuggestionSet.php.
References $limit.
Referenced by SearchEngine\processCompletionResults().
|
private |
Definition at line 37 of file SearchSuggestionSet.php.
|
private |
Definition at line 31 of file SearchSuggestionSet.php.
Referenced by fromStrings(), fromTitles(), and getSuggestions().