final class CatalogStatistics
Restricted visibility: declared "@visibility root". Code outside that scope must not name this declaration.

The counts the report is read through.

Every page asks the same questions of the catalog — how far the analysis got, what the statements do, which tables they touch — so the counting is done once, over the whole catalog, rather than once per page over whatever that page happens to hold.

Methods§

public function __construct(Catalog $catalog)

Counts the catalog once.

Parameters

$catalogCatalog
public function statements(): int

How many statements the catalog holds.

Returns

int
Test cases 1
Calls 1
public function resolved(): int

How many statements have no gaps at all.

Returns

int
Test cases 1
public function open(): int

How many statements the analyzer stopped short of, one way or another.

Returns

int
Test cases 1
public function findings(): int

How many findings the catalog holds.

Returns

int
Test cases 1
Calls 1
public function atLeast(Severity $severity): int

How many statements carry a finding of at least that severity.

Parameters

$severitySeverity

Returns

int
Test cases 1
public function byResolution(): array<string, int>

How many statements each resolution accounts for, in the order they are explained.

Returns

array<string, int>
Test cases 1
Calls 1
public function byKind(): array<string, int>

How many statements of each kind there are, most first.

Returns

array<string, int>
Test cases 1
Calls 1
public function byRule(): array<string, int>

How many findings each rule accounts for, most first.

Returns

array<string, int>
Test cases 1
Calls 1
public function tables(): list<array{name: string, reads: int, writes: int, statements: int}>

Every table the catalog names, with how it is used, most used first.

Returns

list<array{name: string, reads: int, writes: int, statements: int}>
Test cases 1
Calls 2
public function files(): array<string, array{statements: int, open: int, findings: int}>

Every file the catalog names, with what was found in it, in path order.

Returns

array<string, array{statements: int, open: int, findings: int}>
Test cases 1
Calls 2
public function flagged(): list<CatalogEntry>

Every statement carrying a finding, worst first.

Returns

Test cases 1
Calls 3

Private surface 1§

Implementation details, listed for orientation only.

private Catalog $catalog

Test cases 29§

Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.

Dedicated tests 11
Other tests reaching this symbol 18

Relations§

Instantiated in 1
Type declarations 2