Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
SearchResult
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 2
20
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 2
0.00% covered (danger)
0.00%
0 / 1
6
 newFromTitle
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
6
1<?php
2/**
3 * Search engine result
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 * http://www.gnu.org/copyleft/gpl.html
19 *
20 * @file
21 * @ingroup Search
22 */
23
24use MediaWiki\Title\Title;
25
26/**
27 * NOTE: this class is being refactored into an abstract base class.
28 * If you extend this class directly, please implement all the methods declared
29 * in RevisionSearchResultTrait or extend RevisionSearchResult.
30 *
31 * Once the hard-deprecation period is over (1.36?):
32 * - all methods declared in RevisionSearchResultTrait should be declared
33 *   as abstract in this class
34 * - RevisionSearchResultTrait body should be moved to RevisionSearchResult and then removed without
35 *   deprecation
36 * - caveat: all classes extending this one may potentially break if they did not properly implement
37 *   all the methods.
38 * @ingroup Search
39 */
40class SearchResult {
41    use SearchResultTrait;
42    use RevisionSearchResultTrait;
43
44    public function __construct() {
45        if ( self::class === static::class ) {
46            wfDeprecated( __METHOD__, '1.34' );
47        }
48    }
49
50    /**
51     * Return a new SearchResult and initializes it with a title.
52     *
53     * @param Title $title
54     * @param ISearchResultSet|null $parentSet
55     * @return SearchResult
56     */
57    public static function newFromTitle( $title, ISearchResultSet $parentSet = null ) {
58        $result = new RevisionSearchResult( $title );
59        if ( $parentSet ) {
60            $parentSet->augmentResult( $result );
61        }
62        return $result;
63    }
64}