NaifyView\Compiler\CompiledArtifactDependencyPlanner クラス

CompiledArtifactDependencyPlanner — compiled mainline の Compiled Artifact Dependency Planner

template を generated PHP class へ落とす compile pipeline の一部。 大きな compiler へ責務を押し込まず、source 生成・依存計画・fast path などを小さく分ける。

使用例

// Engine が warm-hit できない template を compiled artifact へ変換する時に使う。
// 通常は View / Engine 経由で呼ばれ、アプリ側から直接操作しない。

プロパティ

名前型説明
private $expressionEvaluator NaifyExpressionEvaluator top-level split helper
private $bindingParser NaifyBindingParser include/layout with binding parser
private $helperChainParser NaifyHelperChainParser explicit filter world parser

メソッド

メソッド説明
public __construct(?NaifyExpressionEvaluator $expressionEvaluator, ?NaifyBindingParser $bindingParser, ?NaifyHelperChainParser $helperChainParser): void インスタンスを初期化する
public createEmptyPlan(): array `createEmptyPlan()` を実行する
public mergeTemplatePlan(array $aggregatePlan, string $templatePath, DocumentNode $document): void `mergeTemplatePlan()` を実行する
private analyzeNodeList(array $nodes, array $plan): void `analyzeNodeList()` を実行する
private analyzeNode(NodeInterface $node, array $plan): void `analyzeNode()` を実行する
private analyzeAttributeValue(string $attributeValue, array $plan): void `analyzeAttributeValue()` を実行する
private analyzeBindingExpression(?string $withExpression, array $plan): void `analyzeBindingExpression()` を実行する
private analyzeOutputExpression(string $expression, array $plan): void `analyzeOutputExpression()` を実行する
private analyzeValueExpression(string $expression, array $plan): void `analyzeValueExpression()` を実行する
private recordFilter(array $plan, string $filterName): void `recordFilter()` を実行する
private recordSpecialVariable(array $plan, string $specialVariable): void `recordSpecialVariable()` を実行する
private recordFeatureFlag(array $plan, string $featureFlag): void `recordFeatureFlag()` を実行する
private incrementNodeCount(array $plan, string $nodeType): void `incrementNodeCount()` を実行する
private normalizePlan(array $plan): void `normalizePlan()` を実行する