xref: /dokuwiki/inc/Search/Collection/FrequencyCollection.php (revision f2bbffb509f37291c31c023167b8aeb383079d6d)
1*f2bbffb5SAndreas Gohr<?php
2*f2bbffb5SAndreas Gohr
3*f2bbffb5SAndreas Gohrnamespace dokuwiki\Search\Collection;
4*f2bbffb5SAndreas Gohr
5*f2bbffb5SAndreas Gohr/**
6*f2bbffb5SAndreas Gohr * Abstract collection for frequency-based indexes
7*f2bbffb5SAndreas Gohr *
8*f2bbffb5SAndreas Gohr * In a frequency collection the same token can appear multiple times per entity. The frequency of each
9*f2bbffb5SAndreas Gohr * token per entity is tracked.
10*f2bbffb5SAndreas Gohr *
11*f2bbffb5SAndreas Gohr * @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
12*f2bbffb5SAndreas Gohr * @author Andreas Gohr <andi@splitbrain.org>
13*f2bbffb5SAndreas Gohr * @author Tom N Harris <tnharris@whoopdedo.org>
14*f2bbffb5SAndreas Gohr */
15*f2bbffb5SAndreas Gohrabstract class FrequencyCollection extends AbstractCollection
16*f2bbffb5SAndreas Gohr{
17*f2bbffb5SAndreas Gohr    /** @inheritdoc */
18*f2bbffb5SAndreas Gohr    protected function countTokens(array $tokens): array
19*f2bbffb5SAndreas Gohr    {
20*f2bbffb5SAndreas Gohr        return array_count_values($tokens);
21*f2bbffb5SAndreas Gohr    }
22*f2bbffb5SAndreas Gohr}
23