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()` を実行する