__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 3
dl 0
loc 6
rs 10
c 0
b 0
f 0
1
<?php
2
3
/**
4
 * This file is part of the reliforp/reli-prof package.
5
 *
6
 * (c) sji <[email protected]>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
declare(strict_types=1);
13
14
namespace Reli\Lib\PhpProcessReader\PhpMemoryReader\MemoryLocation;
15
16
use Reli\Lib\PhpInternals\Types\Zend\ZendArray;
0 ignored issues
show
Bug introduced by
The type Reli\Lib\PhpInternals\Types\Zend\ZendArray was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
17
use Reli\Lib\Process\MemoryLocation;
18
19
final class ZendArrayTableOverheadMemoryLocation extends MemoryLocation
20
{
21
    public function __construct(
22
        int $address,
23
        int $size,
24
        public ZendArrayTableMemoryLocation $used_location,
25
    ) {
26
        parent::__construct($address, $size);
27
    }
28
29
    public static function fromZendArrayAndUsedLocation(
30
        ZendArray $zend_array,
31
        ZendArrayTableMemoryLocation $used_location,
32
    ): self {
33
        $table_address = $zend_array->getRealTableAddress();
34
        $unused_region_begin = $table_address + $zend_array->getUsedTableSize();
35
        return new self(
36
            $unused_region_begin,
37
            $zend_array->getTableSize() - $zend_array->getUsedTableSize(),
38
            $used_location,
39
        );
40
    }
41
}
42