Statement
abstract class Statement implements Stringable (View source)
The result of the parser is an array of statements are extensions of the class defined here.
A statement represents the result of parsing the lexemes.
Abstract statement definition.
Constants
protected ADD_CLAUSE |
|
protected ADD_KEYWORD |
|
Properties
static array<string,int|array<int,int|string>> | $statementOptions | Options for this statement. |
|
static array | $clauses | The clauses of this statement, in order. |
|
OptionsArray|null | $options | The options of this query. |
|
int|null | $first | The index of the first token used in this statement. |
|
int|null | $last | The index of the last token used in this statement. |
Methods
No description
Builds the string representation of this statement.
Function called before the token is processed.
Function called after the token was processed.
Gets the clauses of this statement.
Builds the string representation of this statement.
Validates the order of the clauses in parsed statement Ideally this should be called after successfully completing the parsing of each statement.
Details
__construct(Parser|null $parser = null, TokensList|null $list = null)
No description
string
build()
Builds the string representation of this statement.
void
parse(Parser $parser, TokensList $list)
Parses the statements defined by the tokens list.
void
before(Parser $parser, TokensList $list, Token $token)
Function called before the token is processed.
void
after(Parser $parser, TokensList $list, Token $token)
Function called after the token was processed.
array
getClauses()
Gets the clauses of this statement.
string
__toString()
Builds the string representation of this statement.
bool
validateClauseOrder(Parser $parser, TokensList $list)
Validates the order of the clauses in parsed statement Ideally this should be called after successfully completing the parsing of each statement.