DataStructureImplementation
class DataStructureImplementation extends AbstractArrayFusionObject (View source)
Fusion object to render and array of key value pairs by evaluating all properties
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
Sort the Fusion objects inside $this->properties depending on:
- numerical ordering
- position meta-property
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
protected array
sortNestedFusionKeys()
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