NaifyView\Runtime\CompiledPathRuntime クラス
CompiledPathRuntime — generated runtime ABI の Compiled Path Runtime
compiled template class から呼ばれる runtime surface。 compiler が生成する PHP と対になるため、変更時は generated code との互換を意識する。
使用例
// generated PHP class から呼ばれる runtime ABI。
// compiler が吐いたコードと対になるため、公開 API として直接使わない。
メソッド
| メソッド | 説明 |
|---|---|
public
readPathValueWithExistence(mixed $value, array $segments): mixed
|
Read a value and its presence together, including null-valued properties. |
public
readRootPathValue(array $scope, string $rootKey, array $segments): mixed
|
`readRootPathValue()` を実行する |
public
readRootSegmentValue(array $scope, string $rootKey, mixed $segment): mixed
|
`readRootSegmentValue()` を実行する |
public
readRootPairValue(array $scope, string $rootKey, mixed $firstSegment, mixed $secondSegment): mixed
|
`readRootPairValue()` を実行する |
public
readRootTripleValue(array $scope, string $rootKey, mixed $firstSegment, mixed $secondSegment, mixed $thirdSegment): mixed
|
`readRootTripleValue()` を実行する |
public
isRootPathDefined(array $scope, string $rootKey, array $segments): bool
|
`isRootPathDefined()` かを返す |
public
readPublicPathValue(array $scope, array $segments): mixed
|
`readPublicPathValue()` を実行する |
public
isPublicPathDefined(array $scope, array $segments): bool
|
`isPublicPathDefined()` かを返す |
public
readSpecialPathValue(array $scope, array $segments, array $specialScope): mixed
|
`readSpecialPathValue()` を実行する |
public
isSpecialPathDefined(array $scope, array $segments, array $specialScope): bool
|
`isSpecialPathDefined()` かを返す |
public
readPathSegments(mixed $value, array $segments): mixed
|
`readPathSegments()` を実行する |
private
readPathSegmentsFromRoot(mixed $value, array $segments): mixed
|
`readPathSegmentsFromRoot()` を実行する |
private
readArrayRootPathSegments(array $value, array $segments, int $segmentCount): mixed
|
`readArrayRootPathSegments()` を実行する |
public
readSegment(mixed $value, mixed $segment): mixed
|
`readSegment()` を実行する |
private
arePathSegmentsDefined(mixed $value, array $segments): bool
|
`arePathSegmentsDefined()` を実行する |
private
readSegmentState(mixed $value, mixed $segment): array
|
`readSegmentState()` を実行する |
private
extractVisiblePublicScope(array $scope): array
|
`extractVisiblePublicScope()` を実行する |
private
isProtectedInputKey(mixed $key): bool
|
`isProtectedInputKey()` かを返す |