classPgSqlForeignKeyDefinitionParser
final class PgSqlForeignKeyDefinitionParser
Foreign key definition parser for PostgreSQL queries.
Methods§
public function parseCreateTable(string $sql): array<string, ForeignKeyDefinition>Parameters
$sql | string |
Returns
array<string, ForeignKeyDefinition>Test cases 11
PgSqlForeignKeyDefinitionParserTest::testDoesNotTreatOtherCreateStatementParenthesesAsTableBodiescallsPgSqlForeignKeyDefinitionParserTest::testForeignKeyClauseRequiresImmediateKeyAndColumnListTokenscallsPgSqlForeignKeyDefinitionParserTest::testMalformedActionsRemainNoActionWithoutTokenLookaheadFailurescallsPgSqlForeignKeyDefinitionParserTest::testNestedActionTokensCannotOverrideTopLevelActioncallsPgSqlForeignKeyDefinitionParserTest::testParseCreateTableParsesNamedCompositeConstraintWithoutRegexSubstitutioncallsPgSqlForeignKeyDefinitionParserTest::testParsesEveryActionAndAssignsSequentialSyntheticNamescallsPgSqlForeignKeyDefinitionParserTest::testParsesInlineAndPostgreSqlQuotedReferencescallsPgSqlForeignKeyDefinitionParserTest::testRejectsNonCreateAndMalformedForeignKeyStructurescallsPgSqlForeignKeyDefinitionParserTest::testRejectsStatementsAndMalformedReferencesWithoutTableBodycallsPgSqlForeignKeyDefinitionParserTest::testUsesOnlyCreateTableTopLevelParenthesescallsPgSqlForeignKeyDefinitionParserTest::testUsesReferencedPrimaryKeyWhenColumnListIsOmittedcalls
Called from 1
Calls 9
- method-call DefinitionTokens::tableBody() line 22
- new DefinitionTokens line 22
- static-call SqlTokenStream::tokenize() line 28
- static-call PgSqlLexerProfile::create() line 28
- function-call
in_arrayline 32 - function-call
sprintfline 37 - function-call
countline 37 - method-call DefinitionEntry::parseEntry() line 38
- new DefinitionEntry line 38
Test cases 20§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 11
PgSqlForeignKeyDefinitionParserTest::testDoesNotTreatOtherCreateStatementParenthesesAsTableBodiescallsPgSqlForeignKeyDefinitionParserTest::testForeignKeyClauseRequiresImmediateKeyAndColumnListTokenscallsPgSqlForeignKeyDefinitionParserTest::testMalformedActionsRemainNoActionWithoutTokenLookaheadFailurescallsPgSqlForeignKeyDefinitionParserTest::testNestedActionTokensCannotOverrideTopLevelActioncallsPgSqlForeignKeyDefinitionParserTest::testParseCreateTableParsesNamedCompositeConstraintWithoutRegexSubstitutioncallsPgSqlForeignKeyDefinitionParserTest::testParsesEveryActionAndAssignsSequentialSyntheticNamescallsPgSqlForeignKeyDefinitionParserTest::testParsesInlineAndPostgreSqlQuotedReferencescallsPgSqlForeignKeyDefinitionParserTest::testRejectsNonCreateAndMalformedForeignKeyStructurescallsPgSqlForeignKeyDefinitionParserTest::testRejectsStatementsAndMalformedReferencesWithoutTableBodycallsPgSqlForeignKeyDefinitionParserTest::testUsesOnlyCreateTableTopLevelParenthesescallsPgSqlForeignKeyDefinitionParserTest::testUsesReferencedPrimaryKeyWhenColumnListIsOmittedcalls
Other tests reaching this symbol 9
PgSqlSessionFactoryTestcallsTableContextTestcallsPgSqlRewriterTestcallsStatementRewriterTestcallsPgSqlSchemaParserTestcallsSchemaInitializerTestcallsRowMutationResolverTestcallsTableMutationResolverTestcallsPgSqlMutationResolverTestcalls