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

Resolves declaration SQL into immutable state used by statement binding.

Methods§

public function __construct(
    private Dialect $dialect,
    ?string $defaultSchema = null,
    ?string $grammarVersion = null,
)

Selects a language, release and default declaration namespace.

Parameters

$dialectDialect
$defaultSchema?string
$grammarVersion?string
Calls 2
public function analyze(string ...$sql): Schema

Builds a closed table state without retaining parser nodes or SQL text.

Parameters

$sqlstring

Returns

Throws

SemanticException When state facts conflict or cannot be resolved
AnalysisException When declarations are outside the selected language
Test cases 1
Called from 1
Calls 2
public function read(string ...$sql): Schema

Compatibility path preserving the original parser exception contract.

Parameters

$sqlstring

Returns

Throws

SemanticException When state facts conflict or cannot be resolved
SourceException When declarations are outside the selected language
Test cases 1
Called from 2
Calls 8

Private surface 3§

Implementation details, listed for orientation only.

private DialectParser $parser
private string $defaultSchema
private Dialect $dialect

Test cases 8§

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

Dedicated tests 2
Other tests reaching this symbol 6

Relations§

Instantiated in 2
Method calls 2
Type declarations 2