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

__construct(Runtime $runtime, string $path, string $fusionObjectName)

Constructor

mixed
evaluate()

Evaluate this Fusion object and return the result

getRuntime()

Get the Fusion runtime this object was created in.

mixed
fusionValue(string $path)

Return the Fusion value relative to this Fusion object (with processors etc applied).

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

array
evaluateNestedProperties(string|null $defaultFusionPrototypeName = null)

No description

array
sortNestedProperties() deprecated

Sort the Fusion objects inside $this->properties depending on:

  • numerical ordering
  • position meta-property

array
preparePropertyKeys(array $properties, array $ignoredProperties)

No description

array
applyPositionalArraySorterToProperties(array $properties)

No description

array
filterIgnoredProperties(array $properties, array $ignoredProperties)

Filters properties by ignoredProperties

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()

No description

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.

Details

__construct(Runtime $runtime, string $path, string $fusionObjectName)

Constructor

Parameters

Runtime $runtime
string $path
string $fusionObjectName

mixed evaluate()

Evaluate this Fusion object and return the result

Return Value

mixed

Runtime getRuntime()

Get the Fusion runtime this object was created in.

Return Value

Runtime

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.

Parameters

string $path

Return Value

mixed

bool offsetExists(mixed $offset)

No description

Parameters

mixed $offset

Return Value

bool

mixed offsetGet(mixed $offset)

No description

Parameters

mixed $offset

Return Value

mixed

void offsetSet(mixed $offset, mixed $value)

No description

Parameters

mixed $offset
mixed $value

Return Value

void

void offsetUnset(mixed $offset)

No description

Parameters

mixed $offset

Return Value

void

void setIgnoreProperties(array $ignoreProperties = [])

No description

Parameters

array $ignoreProperties

Return Value

void

bool shouldSortProperties()

Checks wether this Array fusion object should have sorted properties (according to __meta.position) or not

Return Value

bool

See also

applyPositionalArraySorterToProperties

protected array evaluateNestedProperties(string|null $defaultFusionPrototypeName = null)

No description

Parameters

string|null $defaultFusionPrototypeName

Return Value

array

Exceptions

Exception
InvalidConfigurationException
StopActionException
Exception

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

Return Value

array

an ordered list of key value pairs

Exceptions

Exception

if the positional string has an unsupported format

See also

PositionalArraySorter
preparePropertyKeys()

protected array preparePropertyKeys(array $properties, array $ignoredProperties)

No description

Parameters

array $properties
array $ignoredProperties

Return Value

array

Fusion keys in this Array fusion object

Exceptions

Exception

protected array applyPositionalArraySorterToProperties(array $properties)

No description

Parameters

array $properties

Return Value

array

Exceptions

Exception

protected array filterIgnoredProperties(array $properties, array $ignoredProperties)

Filters properties by ignoredProperties

Parameters

array $properties
array $ignoredProperties

Return Value

array

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

Parameters

string|int $key

fusion child key path to check

Return Value

bool

string getTemplatePath()

Path to the template which should be rendered

Return Value

string

string getPartialRootPath()

Path to the partial root

Return Value

string

string getLayoutRootPath()

Path to the layout root

Return Value

string

string getSectionName()

Name of a specific section, if only this section should be rendered.

Return Value

string

string getPath()

internal  
 

No description

Return Value

string

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.

Parameters

FluidView $view

Return Value

void