KeyValueStorage   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 1
dl 0
loc 20
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A eachKeys() 0 10 2
1
<?php
2
declare(strict_types=1);
3
4
/**
5
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
6
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
7
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
8
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
9
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
10
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
11
 * THE SOFTWARE.
12
 *
13
 * This software consists of voluntary contributions made by many individuals
14
 * and is licensed under the MIT license.
15
 *
16
 * Copyright (c) 2014-2019 Yuuki Takezawa
17
 *
18
 */
19
20
namespace Ytake\LaravelSmarty\Cache;
21
22
/**
23
 * Class KeyValueStorage
24
 *
25
 * @author  yuuki.takezawa<[email protected]>
26
 * @license http://opensource.org/licenses/MIT MIT
27
 */
28
abstract class KeyValueStorage extends \Smarty_CacheResource_KeyValueStore
29
{
30
    /**
31
     * @param array $keys
32
     * @param array $map
33
     * @param array $lookup
34
     *
35
     * @return array
36
     */
37
    protected function eachKeys(array $keys, array $map, array $lookup)
38
    {
39
        foreach ($keys as $k) {
40
            $hash = sha1($k);
41
            $map[] = $hash;
42
            $lookup[$hash] = $k;
43
        }
44
45
        return [$map, $lookup];
46
    }
47
}
48