NaifyView\Dialect\Naify\NaifyElementParser クラス
NaifyElementParser — Naify dialect の Naify Element Parser
Native template 構文の parser / evaluator / runtime contract を担当する。 Twig / Smarty 互換文化を混ぜず、Naify として持つ構文 surface をここで固定する。
使用例
// Naify dialect の parser / expression / runtime helper として使う。
// 通常は NaifyParser や compiler/executor から間接的に呼ばれる。
プロパティ
| 名前 | 型 | 説明 |
|---|---|---|
private
$directiveSurface
|
NaifyDirectiveSurface |
|
private
$consumeToken
|
Closure |
|
private
$currentToken
|
Closure |
|
private
$parseNestedNodes
|
Closure |
|
private
$mergeSpan
|
Closure |
|
private
$buildParserException
|
Closure |
メソッド
| メソッド | 説明 |
|---|---|
public
__construct(NaifyDirectiveSurface $directiveSurface, Closure $consumeToken, Closure $currentToken, Closure $parseNestedNodes, Closure $mergeSpan, Closure $buildParserException): void
|
インスタンスを初期化する |
public
parseElementNode(): ElementNode
|
`parseElementNode()` を実行する |
private
consumeToken(): ?Token
|
`consumeToken()` を実行する |
private
currentToken(): ?Token
|
`currentToken()` を実行する |
private
parseNestedNodes(callable $shouldStop): array
|
`parseNestedNodes()` を実行する |
private
mergeSpan(SourceSpan $start, SourceSpan $end): SourceSpan
|
`mergeSpan()` を実行する |
private
parserException(string $message, string $errorCode, string $messageKey, ?Token $token, array $payload = '...'): NaifyViewException
|
`parserException()` を実行する |