TemplateImplementation
class TemplateImplementation extends AbstractArrayFusionObject (View source)
Fusion object rendering a fluid template
//fusionPath variables TODO The result of this Fusion object is made available inside the template as "variables"
Properties
protected Runtime | $runtime | from AbstractFusionObject | |
protected string | $path | The Fusion path currently being rendered |
from AbstractFusionObject |
protected string | $fusionObjectName | Name of this Fusion object, like Neos.Neos:Text |
from AbstractFusionObject |
protected array | $fusionValueCache | from AbstractFusionObject | |
protected array internal | $properties | List of properties which have been set using array access. We store this for every Fusion object in order to do things like: x = Foo { a = 'foo' b = ${this.a + 'bar'} } |
from AbstractArrayFusionObject |
protected array | $ignoreProperties | If you iterate over "properties" these in here should usually be ignored. For example additional properties in "Case" that are not "Matchers". |
from AbstractArrayFusionObject |
Methods
Evaluate this Fusion object and return the result
Return the Fusion value relative to this Fusion object (with processors etc applied).
No description
Checks wether this Array fusion object should have sorted properties (according to __meta.position) or not
No description
Sort the Fusion objects inside $this->properties depending on:
- numerical ordering
- position meta-property
No description
No description
Filters properties by ignoredProperties
Returns TRUE if the given fusion key has been removed via ">"
Returns TRUE if the given fusion key has no type, meaning neither having a fusion objectType, eelExpression or value
Path to the template which should be rendered
Path to the partial root
Path to the layout root
Name of a specific section, if only this section should be rendered.
No description
This is a template method which can be overridden in subclasses to add new variables which should be available inside the Fluid template. It is needed e.g. for Expose.
Details
__construct(Runtime $runtime, string $path, string $fusionObjectName)
Constructor
mixed
evaluate()
Evaluate this Fusion object and return the result
Runtime
getRuntime()
Get the Fusion runtime this object was created in.
protected mixed
fusionValue(string $path)
Return the Fusion value relative to this Fusion object (with processors etc applied).
Note that subsequent calls of fusionValue() with the same Fusion path will return the same values since the first evaluated value will be cached in memory.
bool
offsetExists(mixed $offset)
No description
mixed
offsetGet(mixed $offset)
No description
void
offsetSet(mixed $offset, mixed $value)
No description
void
offsetUnset(mixed $offset)
No description
void
setIgnoreProperties(array $ignoreProperties = [])
No description
bool
shouldSortProperties()
Checks wether this Array fusion object should have sorted properties (according to __meta.position) or not
protected array
evaluateNestedProperties(string|null $defaultFusionPrototypeName = null)
No description
protected array
sortNestedProperties()
deprecated
deprecated
Sort the Fusion objects inside $this->properties depending on:
- numerical ordering
- position meta-property
This will ignore all properties defined in "@ignoreProperties" in Fusion
protected array
preparePropertyKeys(array $properties, array $ignoredProperties)
No description
protected array
applyPositionalArraySorterToProperties(array $properties)
No description
protected array
filterIgnoredProperties(array $properties, array $ignoredProperties)
Filters properties by ignoredProperties
protected bool
isUnset(string|int $key)
Returns TRUE if the given fusion key has been removed via ">"
protected bool
isUntyped(string|int $key)
Returns TRUE if the given fusion key has no type, meaning neither having a fusion objectType, eelExpression or value
string
getTemplatePath()
Path to the template which should be rendered
string
getPartialRootPath()
Path to the partial root
string
getLayoutRootPath()
Path to the layout root
string
getSectionName()
Name of a specific section, if only this section should be rendered.
string
getPath()
internal |
No description
protected void
initializeView(FluidView $view)
This is a template method which can be overridden in subclasses to add new variables which should be available inside the Fluid template. It is needed e.g. for Expose.