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

Reads SQLite's numeric literals.

A number with underscores between its digits is QNUMBER; otherwise a hexadecimal or plain integer is INTEGER and anything with a fraction or exponent is FLOAT. An identifier character right after a number makes the whole run illegal.

Methods§

public function scan(Scan $scan): Lexeme|null

Reads the number at the cursor, if one starts there.

Parameters

$scanScanThe tokenization in progress

Returns

Lexeme|null The lexeme, or null when no number starts here

Throws

LexicalException When an identifier character follows the number
Test cases 2
Called from 1
Calls 5

Test cases 4§

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 2

Relations§

Instantiated in 1
Method calls 1
Type declarations 1