classLexeme
final class Lexeme
Restricted visibility: declared "@visibility root". Code outside that scope must not name this declaration.
A terminal a dialect scanner recognised, before it is numbered against a grammar.
Properties§
public string $namepublic string $textpublic int $offsetMethods§
public function __construct(public string $name, public string $text, public int $offset)Parameters
$name | string | Terminal name as the grammar spells it |
$text | string | Text as written in the SQL |
$offset | int | Byte offset of the first character |
public function end(): intAnswers the byte offset just past the lexeme.
Returns
int End offsetTest cases 1
LexemeTest::testEndcalls
Calls 1
- function-call
strlenline 33
Test cases 35§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 1
LexemeTest::testEndcalls
Other tests reaching this symbol 34
TerminalIndexTest::testTokencallsTerminalIndexTest::testTokenRejectsANonterminalNamecallsTerminalIndexTest::testTokenRejectsAnUnknownTerminalcallsTerminalIndexTest::testTokenscallsTerminalIndexTest::testTokensGivesTheSkippedTextToTheTokenThatFollowsItcallsMySqlLexerTest::testMergedcallsMySqlLexerTest::testScanReadsAnEmptyHostNameAsTheServerDoescallsMySqlLexerTest::testScanReadsAStatementIntoTerminalscallsNumberScannerTestcallsOperatorScannerTestcallsQuotedScannerTestcallsScanTestcallsVariableScannerTestcallsWordScannerTestcallsMySqlParserTestcallsLookaheadFilterTest::testApplyFinishesUnicodeLiteralscallsLookaheadFilterTest::testApplyRenamesByTheFollowingTokencallsLookaheadFilterTest::testUnicodecallsLookaheadFilterTest::testUnicodeRejectsABadEscapeClausecallsNumberScannerTestcallsOperatorScannerTestcallsPostgreSqlLexerTest::testScancallsQuotedScannerTestcallsScanTestcallsWordScannerTestcallsPostgreSqlParserTestcallsNumberScannerTestcallsOperatorScannerTestcallsQuotedScannerTestcallsScanTest::testLastcallsSqliteLexerTest::testScanEndsWithAStatementTerminatorcallsVariableScannerTestcallsWordScannerTest::testContextualcallsSqliteParserTestcalls
Relations§
Instantiated in 9
- new SqlParser\MySql\Lexer\MySqlLexer::scan() packages/sql-parser/src/MySql/Lexer/MySqlLexer.php:70
- new SqlParser\MySql\Lexer\MySqlLexer::merged() packages/sql-parser/src/MySql/Lexer/MySqlLexer.php:126
- new SqlParser\MySql\Lexer\Scan::lexeme() packages/sql-parser/src/MySql/Lexer/Scan.php:53
- new SqlParser\PostgreSql\Lexer\LookaheadFilter::apply() packages/sql-parser/src/PostgreSql/Lexer/LookaheadFilter.php:52
- new SqlParser\PostgreSql\Lexer\LookaheadFilter::unicode() packages/sql-parser/src/PostgreSql/Lexer/LookaheadFilter.php:79
- new SqlParser\PostgreSql\Lexer\LookaheadFilter::unicode() packages/sql-parser/src/PostgreSql/Lexer/LookaheadFilter.php:87
- new SqlParser\PostgreSql\Lexer\Scan::lexeme() packages/sql-parser/src/PostgreSql/Lexer/Scan.php:37
- new SqlParser\Sqlite\Lexer\Scan::lexeme() packages/sql-parser/src/Sqlite/Lexer/Scan.php:46
- new SqlParser\Sqlite\Lexer\SqliteLexer::scan() packages/sql-parser/src/Sqlite/Lexer/SqliteLexer.php:67
Type declarations 35
- type SqlParser\Lexer\TerminalIndex packages/sql-parser/src/Lexer/TerminalIndex.php:62
- type SqlParser\MySql\Lexer\MySqlLexer packages/sql-parser/src/MySql/Lexer/MySqlLexer.php:84
- type SqlParser\MySql\Lexer\NumberScanner packages/sql-parser/src/MySql/Lexer/NumberScanner.php:28
- type SqlParser\MySql\Lexer\NumberScanner packages/sql-parser/src/MySql/Lexer/NumberScanner.php:67
- type SqlParser\MySql\Lexer\OperatorScanner packages/sql-parser/src/MySql/Lexer/OperatorScanner.php:36
- type SqlParser\MySql\Lexer\OperatorScanner packages/sql-parser/src/MySql/Lexer/OperatorScanner.php:101
- type SqlParser\MySql\Lexer\QuotedScanner packages/sql-parser/src/MySql/Lexer/QuotedScanner.php:31
- type SqlParser\MySql\Lexer\QuotedScanner packages/sql-parser/src/MySql/Lexer/QuotedScanner.php:75
- type SqlParser\MySql\Lexer\QuotedScanner packages/sql-parser/src/MySql/Lexer/QuotedScanner.php:96
- type SqlParser\MySql\Lexer\Scan packages/sql-parser/src/MySql/Lexer/Scan.php:51
- type SqlParser\MySql\Lexer\VariableScanner packages/sql-parser/src/MySql/Lexer/VariableScanner.php:28
- type SqlParser\MySql\Lexer\VariableScanner packages/sql-parser/src/MySql/Lexer/VariableScanner.php:50
- type SqlParser\MySql\Lexer\VariableScanner packages/sql-parser/src/MySql/Lexer/VariableScanner.php:67
- type SqlParser\MySql\Lexer\VariableScanner packages/sql-parser/src/MySql/Lexer/VariableScanner.php:87
- type SqlParser\MySql\Lexer\WordScanner packages/sql-parser/src/MySql/Lexer/WordScanner.php:31
- type SqlParser\MySql\Lexer\WordScanner packages/sql-parser/src/MySql/Lexer/WordScanner.php:56
- type SqlParser\MySql\Lexer\WordScanner packages/sql-parser/src/MySql/Lexer/WordScanner.php:90
- type SqlParser\MySql\Lexer\WordScanner packages/sql-parser/src/MySql/Lexer/WordScanner.php:127
- type SqlParser\MySql\Lexer\WordScanner packages/sql-parser/src/MySql/Lexer/WordScanner.php:141
- type SqlParser\PostgreSql\Lexer\LookaheadFilter packages/sql-parser/src/PostgreSql/Lexer/LookaheadFilter.php:75
- type SqlParser\PostgreSql\Lexer\NumberScanner packages/sql-parser/src/PostgreSql/Lexer/NumberScanner.php:30
- type SqlParser\PostgreSql\Lexer\OperatorScanner packages/sql-parser/src/PostgreSql/Lexer/OperatorScanner.php:52
- type SqlParser\PostgreSql\Lexer\QuotedScanner packages/sql-parser/src/PostgreSql/Lexer/QuotedScanner.php:37
- type SqlParser\PostgreSql\Lexer\QuotedScanner packages/sql-parser/src/PostgreSql/Lexer/QuotedScanner.php:85
- type SqlParser\PostgreSql\Lexer\QuotedScanner packages/sql-parser/src/PostgreSql/Lexer/QuotedScanner.php:139
- type SqlParser\PostgreSql\Lexer\QuotedScanner packages/sql-parser/src/PostgreSql/Lexer/QuotedScanner.php:162
- type SqlParser\PostgreSql\Lexer\Scan packages/sql-parser/src/PostgreSql/Lexer/Scan.php:35
- type SqlParser\PostgreSql\Lexer\WordScanner packages/sql-parser/src/PostgreSql/Lexer/WordScanner.php:23
- type SqlParser\Sqlite\Lexer\NumberScanner packages/sql-parser/src/Sqlite/Lexer/NumberScanner.php:31
- type SqlParser\Sqlite\Lexer\OperatorScanner packages/sql-parser/src/Sqlite/Lexer/OperatorScanner.php:36
- type SqlParser\Sqlite\Lexer\QuotedScanner packages/sql-parser/src/Sqlite/Lexer/QuotedScanner.php:29
- type SqlParser\Sqlite\Lexer\Scan packages/sql-parser/src/Sqlite/Lexer/Scan.php:44
- type SqlParser\Sqlite\Lexer\Scan packages/sql-parser/src/Sqlite/Lexer/Scan.php:54
- type SqlParser\Sqlite\Lexer\VariableScanner packages/sql-parser/src/Sqlite/Lexer/VariableScanner.php:30
- type SqlParser\Sqlite\Lexer\WordScanner packages/sql-parser/src/Sqlite/Lexer/WordScanner.php:31