classPrimaryParser
final class PrimaryParser
Restricted visibility: declared "@visibility root". Code outside that scope must not name this declaration.
Primary parser for the supported UPSERT expression grammar.
Methods§
public function __construct(private ExpressionCursor $cursor)Shares the token position with the enclosing expression parser.
Parameters
$cursor | ExpressionCursor |
public function parsePrimary(): UpsertExpressionParse primary.
Returns
Throws
Test cases 1
Called from 1
Calls 11
- new UnsupportedSqlException line 35
- method-call ExpressionLexeme::isSymbol() line 37
- new ExpressionLexeme line 37
- method-call PrecedenceParser::parseOr() line 39
- new PrecedenceParser line 39
- class-const SqlTokenKind::Number() line 47
- static-call UpsertExpression::literal() line 50
- method-call ExpressionLexeme::number() line 50
- class-const SqlTokenKind::String() line 52
- method-call ExpressionLexeme::string() line 55
- method-call PrimaryParser::column() line 67
public function columnSource(string $qualifier): UpsertColumnSourceColumn source.
Parameters
$qualifier | string |
Returns
Throws
Test cases 2
Called from 1
Calls 4
- function-call
strcasecmpline 76 - class-const UpsertColumnSource::Incoming() line 77
- class-const UpsertColumnSource::Existing() line 80
- new UnsupportedSqlException line 83
public function column(SqlToken $token): UpsertExpressionReads a bare column or a qualified existing/incoming column reference.
Parameters
$token | SqlToken |
Returns
Throws
Test cases 1
Called from 1
Calls 8
- method-call ExpressionLexeme::isIdentifier() line 91
- new ExpressionLexeme line 91
- new UnsupportedSqlException line 92
- method-call ExpressionLexeme::identifier() line 95
- method-call ExpressionLexeme::isSymbol() line 97
- static-call UpsertExpression::column() line 105
- method-call PrimaryParser::columnSource() line 106
- class-const UpsertColumnSource::Existing() line 111
Private surface 1§
Implementation details, listed for orientation only.
private ExpressionCursor $cursorTest cases 11§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 4
Other tests reaching this symbol 7
PgSqlSessionFactoryTestcallsPgSqlRewriterTestcallsStatementRewriterTestcallsRowMutationResolverTestcallsPrecedenceParserTestcallsPgSqlUpsertExpressionParserTestcallsPgSqlMutationResolverTestcalls