NaifyView\Dialect\Naify\NaifyExpressionStringScanner クラス
NaifyExpressionStringScanner — Naify dialect の Naify Expression String Scanner
Native template 構文の parser / evaluator / runtime contract を担当する。 Twig / Smarty 互換文化を混ぜず、Naify として持つ構文 surface をここで固定する。
使用例
// Naify dialect の parser / expression / runtime helper として使う。
// 通常は NaifyParser や compiler/executor から間接的に呼ばれる。
メソッド
| メソッド | 説明 |
|---|---|
public
splitTopLevel(string $expression, string $operator): array
|
`splitTopLevel()` を実行する |
public
readIdentifier(string $expression, int $offset): array
|
`readIdentifier()` を実行する |
public
findMatchingBracket(string $expression, int $start): int
|
`findMatchingBracket()` を実行する |
public
findMatchingParenthesis(string $expression, int $start): int
|
`findMatchingParenthesis()` を実行する |
public
findMatchingBrace(string $expression, int $start): int
|
`findMatchingBrace()` を実行する |
public
unwrapWrappedParentheses(string $expression): string
|
`unwrapWrappedParentheses()` を実行する |
public
assertBalancedExpression(string $expression): void
|
`assertBalancedExpression()` を実行する |
public
isEscapedCharacter(string $expression, int $index): bool
|
`isEscapedCharacter()` かを返す |
private
isIdentifierCharacter(string $char): bool
|
`isIdentifierCharacter()` かを返す |
private
findMatchingEnclosure(string $expression, int $start, string $open, string $close, string $label): int
|
`findMatchingEnclosure()` を実行する |
private
buildUnmatchedException(string $label, string $code, string $expression): NaifyViewException
|
`buildUnmatchedException()` を実行する |