NaifyView\Dialect\Naify\NaifyHelperChainParser クラス
NaifyHelperChainParser — Naify dialect の Naify Helper Chain Parser
Native template 構文の parser / evaluator / runtime contract を担当する。 Twig / Smarty 互換文化を混ぜず、Naify として持つ構文 surface をここで固定する。
使用例
// Naify dialect の parser / expression / runtime helper として使う。
// 通常は NaifyParser や compiler/executor から間接的に呼ばれる。
メソッド
| メソッド | 説明 |
|---|---|
public
parse(string $expression): ?array
|
source を AST へ変換する |
private
parseExplicitFilterWorld(string $expression): ?array
|
`parseExplicitFilterWorld()` を実行する |
private
parseNativeDotHelperChain(string $expression): ?array
|
`parseNativeDotHelperChain()` を実行する |
private
parseHelperTail(string $expression): array
|
`parseHelperTail()` を実行する |
private
findFirstDotHelperCallOffset(string $expression): ?int
|
`findFirstDotHelperCallOffset()` を実行する |
private
parseDotHelperCallAt(string $expression, int $offset): ?array
|
`parseDotHelperCallAt()` を実行する |
private
findMatchingParenthesis(string $expression, int $start): ?int
|
`findMatchingParenthesis()` を実行する |
private
isMacroCallableBase(string $expression): bool
|
`isMacroCallableBase()` かを返す |
private
isAsciiIdentifierStartChar(string $char): bool
|
`isAsciiIdentifierStartChar()` かを返す |
private
isAsciiIdentifierBodyChar(string $char): bool
|
`isAsciiIdentifierBodyChar()` かを返す |
private
isEscapedCharacter(string $expression, int $index): bool
|
`isEscapedCharacter()` かを返す |