classSemanticException
final class SemanticException
extends RuntimeException
Public API: explicitly declared with
@visibility public.An explicit semantic failure; callers must not treat a rejected tree as bound.
$source = new \SqlParser\Parser\Node('expr', 0, []);
$error = new \SqlSemantics\Core\SemanticException('unknown-column', 'Missing column', $source);
$error->reason // => 'unknown-column'Properties§
public string $reasonMethods§
Test cases 70§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 1
Other tests reaching this symbol 69
SchemaAnalyzerTestcallsColumnPropertiesTestcallsColumnReaderTestcallsConstraintReaderTestcallsIdentifiersTest::testEqualDistinguishesQuotedPostgresCasecallsIdentifiersTest::testRelationEqualModelsMysqlTableAliasesSeparatelyFromColumnscallsSchemaChangesTest::testDropRejectsMissingUnconditionalTargetscallsSchemaChangesTest::testDropRejectsUnresolvedCatalogQualificationcallsSchemaReaderTest::testPrimaryKeysRejectsMissingColumncallsSchemaReaderTest::testTableRejectsDuplicateDeclarationscallsSchemaReaderTest::testValidateRejectsCreateAsSelectcallsStatementListTest::testRejectsAnotherParsersRootcallsTokenGroupsTestcallsTreeTest::testAssertChildrenRejectsUnknownClausescallsTreeTest::testUnsupportedCarriesOriginalSyntaxcallsTypeReaderTestcallsBinderTest::testBindRejectsMissingDeclarationscallsBoundRelationTestcallsExpressionBinderTest::testTokenRejectsUnmodeledTerminalscallsExpressionRulesTest::testPredicateRejectsNonBooleanPostgresInputscallsFromBinderTest::testKindRecognizesRightAndRejectsNaturalcallsFromBinderTest::testTableRejectsAliasColumnListscallsIdentitySequenceTestcallsLiteralBinderTestcallsNullFactsTestcallsProjectionBinderTest::testStarRejectsAnUnknownQualifiercallsScopeTest::testColumnRejectsAmbiguousUnqualifiedNamescallsScopeTest::testCombineRejectsDuplicateAliasescallsScopeTest::testMatchesAliasHidesOriginalTableNamecallsScopeTest::testRejectsReferencesOutsideJoinOperandscallsSelectBinderTestcallsSelectModifiersBinderTest::testPaginationRejectsFetchWithTiesRatherThanDroppingItsMeaningcallsSelectModifiersBinderTest::testRejectsOutOfRangeOrderPositioncallsSyntaxGuardTest::testSelectRejectsUnmodeledConstructscallsTableResolverTest::testRejectsMissingTablesInsteadOfInventingColumnscallsTypeResolutionTest::testRejectsUnmodeledCoercioncallsDialectTestcallsBoundSelectTestcallsColumnBindingTestcallsExpressionKindTestcallsExpressionTestcallsJoinKindTestcallsJoinTestcallsOrderingTestcallsOutputColumnTestcallsTableUseTestcallsPlatformTestcallsNameRulesTestcallsQueryRulesTestcallsSchemaRulesTestcallsSyntaxRulesTestcallsTypeRulesTestcallsColumnDefinitionTestcallsColumnGenerationTestcallsConstraintKindTestcallsGenerationKindTestcallsInvariantTestcallsTableConstraintTestcallsTableDefinitionTestcallsSchemaBuilderTest::testBuildRejectsConflictingDeclarationsAcrossSqlStringscallsSchemaTestcallsNullabilityTestcallsTypeDescriptorTestcallsSchemaTest::testAnalyzeRejectsDuplicateStateIdentitiescallsNameRulesTestcallsPlatformTestcallsQueryRulesTestcallsSchemaRulesTestcallsTypeRulesTestcalls
Relations§
Instantiated in 17
- new SqlSemantics\Platform\MySql\TypeRules::common() packages/sql-semantics-mysql/src/TypeRules.php:167
- new SqlSemantics\Platform\PostgreSql\TypeRules::common() packages/sql-semantics-postgres/src/TypeRules.php:172
- new SqlSemantics\Platform\PostgreSql\TypeRules::predicate() packages/sql-semantics-postgres/src/TypeRules.php:211
- new SqlSemantics\Core\Ast\SchemaChanges::drop() packages/sql-semantics/src/Core/Ast/SchemaChanges.php:50
- new SqlSemantics\Core\Ast\SchemaReader::read() packages/sql-semantics/src/Core/Ast/SchemaReader.php:55
- new SqlSemantics\Core\Ast\SchemaReader::primaryKeys() packages/sql-semantics/src/Core/Ast/SchemaReader.php:127
- new SqlSemantics\Core\Ast\SchemaReader::primaryKeys() packages/sql-semantics/src/Core/Ast/SchemaReader.php:133
- new SqlSemantics\Core\Ast\SchemaReader::primaryKeys() packages/sql-semantics/src/Core/Ast/SchemaReader.php:138
- new SqlSemantics\Core\Ast\StatementList::read() packages/sql-semantics/src/Core/Ast/StatementList.php:26
- new SqlSemantics\Core\Ast\Tree::unsupported() packages/sql-semantics/src/Core/Ast/Tree.php:88
- new SqlSemantics\Core\Binding\ExpressionRules::call() packages/sql-semantics/src/Core/Binding/ExpressionRules.php:37
- new SqlSemantics\Core\Binding\ProjectionBinder::star() packages/sql-semantics/src/Core/Binding/ProjectionBinder.php:89
- new SqlSemantics\Core\Binding\Scope::column() packages/sql-semantics/src/Core/Binding/Scope.php:55
- new SqlSemantics\Core\Binding\Scope::combine() packages/sql-semantics/src/Core/Binding/Scope.php:88
- new SqlSemantics\Core\Binding\SelectModifiersBinder::sortExpression() packages/sql-semantics/src/Core/Binding/SelectModifiersBinder.php:56
- new SqlSemantics\Core\Binding\SelectModifiersBinder::sortExpression() packages/sql-semantics/src/Core/Binding/SelectModifiersBinder.php:63
- new SqlSemantics\Core\Binding\TableResolver::resolve() packages/sql-semantics/src/Core/Binding/TableResolver.php:43