enum Resolution: string
Restricted visibility: declared "@visibility root". Code outside that scope must not name this declaration.

How far the analyzer got with a statement, and why it got no further.

A statement that is not pinned down is not simply "unknown". Having followed a value all the way to a request parameter is a different answer from having run out of budget, both are different from not modelling the dependency at all, and all three are different from never having looked at the call. Reporting which one it is separates what the program does from what the analyzer managed to establish.

Cases§

case Resolved = 'resolved'
case ExternalInput = 'external-input'
case IncompleteModel = 'incomplete-model'
case Incomplete = 'incomplete'
case NotAnalyzed = 'not-analyzed'

Methods§

public function isResolved(): bool

Whether the statement text is pinned down.

Returns

bool
Calls 1
public function isClosed(): bool

Whether the analyzer closed every dependency it set out to follow.

Reaching runtime input closes the search: the trail was followed to its end and the string simply is not fixed. Running out of budget, or not modelling a dependency, leaves the search open.

Returns

bool
Calls 5
public function wasRead(): bool

Whether a statement was read from the call at all.

A budget and a call nothing was read from both leave the text open for a reason about the analyzer rather than about the program, so what is left is not a statement with values spliced into it and must not be reported as one.

Returns

bool
Test cases 1
Calls 5
public function describe(): string

What the analyzer can say about the statement, in one line.

Returns

string
Test cases 1
Calls 5

Test cases 40§

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

Dedicated tests 9
Other tests reaching this symbol 31

Relations§

Static calls 6
Constant reads 15
Type declarations 2