\DeviceAtlas\DeviceDeviceDataParser

Parses the data from the JSON file.

Summary

Methods
Properties
Constants
__construct()
parse()
getDataTypeId()
No public properties found
MIN_DATA_VERSION
XMSG_JSON_VERSION
XMSG_JSON_INVALID
META
META_VERSION
META_CREATED
META_CASE
PROPERTY_NAMES
PROPERTY_NAME
PROPERTY_TYPE
PROPERTY_VALUES
CODE_POINT_DELIM
DYNAMIC_VALUE_EXTRACTORS
COMPONENT_TYPES
TOKEN_TRIE
COMPONENTS
INPUTS
INPUTS_DEPRECATED
INPUTS_LIST
INPUTS_IDENTIFIER_KEY
INPUTS_SOURCE
INPUTS_ENSURE_QUOTE
INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES
INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_COMPONENT_TYPE_ID
INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_IDENTIFIER_INDEXES
INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_ORDERED_INPUTS
INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_ASSOCIATED_INPUTS
INPUTS_PROPERTY_MAPPINGS
INPUTS_PROPERTY_MAPPINGS_IDENTIFIER_ID
INPUTS_PROPERTY_MAPPINGS_TRIM_TRANSFORMATION
INPUTS_PROPERTY_MAPPINGS_TRIM_TRANSFORMATION_PREFIX_TRIM
INPUTS_PROPERTY_MAPPINGS_TRIM_TRANSFORMATION_SUFFIX_TRIM
INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION
INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION_OPERATOR
INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION_COMPARISON_VALUE
INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION_RETURN_VALUE
INPUTS_PROPERTY_MAPPINGS_VALIDATION
INPUTS_PROPERTY_MAPPINGS_VALIDATION_MAX_LENGTH
INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING
INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING_SEPARATOR
INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING_MIN_NUM_SEPARATORS
INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING_MAX_NUM_SEPARATORS
CONSTRAINT_GROUPS
TOKEN_START_CHILD
DIRECT_CHILD
MATCH_CANDIDATES
SW_ALLOWED_ANY_MATCH
COMPONENT_TYPE_INDEX
COMPONENT_TYPE_LEVEL
COMPONENT_TYPE_WEIGHT
COMPONENT_TYPE_NAME_ABBREVIATION
MATCH_CANDIDATE_COMPONENT_INDEX
MATCH_CANDIDATE_MATCH_TYPE
MATCH_CANDIDATE_MATCH_CONSTRAINT
MATCH_CANDIDATE_POSITION_CONSTRAINT
MATCH_CANDIDATE_LOOKAROUND_CONSTRAINT
MATCH_CANDIDATE_CONSTRAINT_GROUP
MATCH_CANDIDATE_PROPERTY_CONSTRAINTS
MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES
MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_PROPERTY
MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_OPERATOR
MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_VALUE
MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_TYPE
MATCH_CANDIDATE_ADDITIONAL_ACTIONS
MATCH_CANDIDATE_ADDITIONAL_ACTIONS_COMPONENT_TYPES_TO_REMOVE
POSITION_CONSTRAINT_MIN_POS
POSITION_CONSTRAINT_MAX_POS
LOOKAROUND_CONSTRAINT_TO_FIND_COMPONENT_INDEX
LOOKAROUND_CONSTRAINT_MIN_OFFSET
LOOKAROUND_CONSTRAINT_MAX_OFFSET
COMPONENT_ID
COMPONENT_TYPE_ID
COMPONENT_WEIGHT
COMPONENT_PARENT_INDEX
COMPONENT_INHERIT_FROM_INDEX
COMPONENT_STOCK_CHILD_INDEX
COMPONENT_PROPERTY_VALUE
COMPONENT_PRECEDES_DYNAMIC_PROPERTY
COMPONENT_DYNAMIC_PROPERTIES
COMPONENT_STOCK_CHILD_INHERIT_DYNAMIC_PROPERTIES
COMPONENT_DYNAMIC_VALUE_PRECEDING_COMPONENT_INDEX
COMPONENT_DYNAMIC_VALUE_EXTRACTOR_INDEX
COMPONENT_VERSION_SPECIFIC_CHILDREN
COMPONENT_START_VERSION
COMPONENT_END_VERSION
COMPONENT_VERSION_SPECIFIC_CHILDREN_PROPERTY_INDEX
COMPONENT_VERSION_SPECIFIC_CHILDREN_MAX_VERSION_PARTS
COMPONENT_VERSION_SPECIFIC_CHILDREN_COMPONENTS
DYNAMIC_VALUE_EXTRACTOR_TYPE
CONSTRAINT_GROUP_LOOKAROUND_CONSTRAINT
JSON_DATA_TYPE_BOOLEAN
JSON_DATA_TYPE_INTEGER
JSON_DATA_TYPE_STRING
No protected methods found
No protected properties found
N/A
getMetaData()
getPropertiesAsPropertyNameObjects()
getPropertyNames()
getPropertyDataTypes()
getPropertyName()
getCodePointDelimiters()
getComponentTypes()
extractComponents()
getComponent()
checkComponent()
getComponentPropertyValues()
getPropertyValue()
getComponentDynamicProperties()
getComponentDynamicValuesArray()
getComponentDynamicValue()
getVersionedSpecificChildren()
extractRootInputs()
extractInputs()
extractInput()
extractIdentifiersByComponentType()
extractIdentifierByComponentType()
getDependentIdentifiers()
getDependentIdentifier()
extractPropertyMappings()
extractPropertyMappingSources()
extractPropertyMappingSource()
extractTrimTransformer()
extractComparisonTransformers()
extractComparisonTransformer()
extractPropertyMappingValidator()
extractPropertyMappingNumericValidator()
getConstraintGroups()
getConstraintGroup()
getMatchConstraint()
getTokenTrie()
traverse()
getMatchCandidates()
getMatchCandidate()
getConstraints()
getPositionConstraint()
getLookaroundConstraints()
getLookaroundConstraint()
getDynamicValueExtractors()
getPropertyConstraints()
getPropertyConstraint()
getComparisonProperties()
getComparisonProperty()
getComponentTypeById()
getAdditionalActions()
getComponentsToReplace()
$json
$metaData
$propertyNames
$propertyDataTypes
$propertyValues
$components
$idToComponentType
$maxComponentTypeId
$dynamicValueExtractors
$delimitersHandler
$tokenTrie
$inputs
$constraintGroups
$maxStockChildLevel
$stockChildIndexesInheritDynamicProperties
$componentToVersionSpecificChildren
$propertyValueCache
$propertyValueCacheBooleans
N/A

Constants

MIN_DATA_VERSION

MIN_DATA_VERSION = 3.0

XMSG_JSON_VERSION

XMSG_JSON_VERSION = "This version of the API requires a newer version of the data file."

XMSG_JSON_INVALID

XMSG_JSON_INVALID = "Invalid device data file."

META

META = "$"

META_VERSION

META_VERSION = "version"

META_CREATED

META_CREATED = "created"

META_CASE

META_CASE = "case"

PROPERTY_NAMES

PROPERTY_NAMES = "p"

PROPERTY_NAME

PROPERTY_NAME = "n"

PROPERTY_TYPE

PROPERTY_TYPE = "t"

PROPERTY_VALUES

PROPERTY_VALUES = "v"

CODE_POINT_DELIM

CODE_POINT_DELIM = "d"

DYNAMIC_VALUE_EXTRACTORS

DYNAMIC_VALUE_EXTRACTORS = "e"

COMPONENT_TYPES

COMPONENT_TYPES = "t"

TOKEN_TRIE

TOKEN_TRIE = "tr"

COMPONENTS

COMPONENTS = "c"

INPUTS

INPUTS = "ai"

INPUTS_DEPRECATED

INPUTS_DEPRECATED = "i"

INPUTS_LIST

INPUTS_LIST = "l"

INPUTS_IDENTIFIER_KEY

INPUTS_IDENTIFIER_KEY = "n"

INPUTS_SOURCE

INPUTS_SOURCE = "s"

INPUTS_ENSURE_QUOTE

INPUTS_ENSURE_QUOTE = "q"

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES = "id"

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_COMPONENT_TYPE_ID

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_COMPONENT_TYPE_ID = "t"

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_IDENTIFIER_INDEXES

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_IDENTIFIER_INDEXES = "i"

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_ORDERED_INPUTS

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_ORDERED_INPUTS = "o"

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_ASSOCIATED_INPUTS

INPUTS_IDENTIFIERS_BY_COMPONENT_TYPES_ASSOCIATED_INPUTS = "a"

INPUTS_PROPERTY_MAPPINGS

INPUTS_PROPERTY_MAPPINGS = "pm"

INPUTS_PROPERTY_MAPPINGS_IDENTIFIER_ID

INPUTS_PROPERTY_MAPPINGS_IDENTIFIER_ID = "i"

INPUTS_PROPERTY_MAPPINGS_TRIM_TRANSFORMATION

INPUTS_PROPERTY_MAPPINGS_TRIM_TRANSFORMATION = "tt"

INPUTS_PROPERTY_MAPPINGS_TRIM_TRANSFORMATION_PREFIX_TRIM

INPUTS_PROPERTY_MAPPINGS_TRIM_TRANSFORMATION_PREFIX_TRIM = "b"

INPUTS_PROPERTY_MAPPINGS_TRIM_TRANSFORMATION_SUFFIX_TRIM

INPUTS_PROPERTY_MAPPINGS_TRIM_TRANSFORMATION_SUFFIX_TRIM = "a"

INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION

INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION = "ct"

INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION_OPERATOR

INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION_OPERATOR = "o"

INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION_COMPARISON_VALUE

INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION_COMPARISON_VALUE = "c"

INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION_RETURN_VALUE

INPUTS_PROPERTY_MAPPINGS_COMPARISON_TRANSFORMATION_RETURN_VALUE = "r"

INPUTS_PROPERTY_MAPPINGS_VALIDATION

INPUTS_PROPERTY_MAPPINGS_VALIDATION = "v"

INPUTS_PROPERTY_MAPPINGS_VALIDATION_MAX_LENGTH

INPUTS_PROPERTY_MAPPINGS_VALIDATION_MAX_LENGTH = "l"

INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING

INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING = "n"

INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING_SEPARATOR

INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING_SEPARATOR = "s"

INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING_MIN_NUM_SEPARATORS

INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING_MIN_NUM_SEPARATORS = "n"

INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING_MAX_NUM_SEPARATORS

INPUTS_PROPERTY_MAPPINGS_VALIDATION_NUMERIC_STRING_MAX_NUM_SEPARATORS = "x"

CONSTRAINT_GROUPS

CONSTRAINT_GROUPS = "cg"

TOKEN_START_CHILD

TOKEN_START_CHILD = "t"

DIRECT_CHILD

DIRECT_CHILD = "c"

MATCH_CANDIDATES

MATCH_CANDIDATES = "m"

SW_ALLOWED_ANY_MATCH

SW_ALLOWED_ANY_MATCH = "sw"

COMPONENT_TYPE_INDEX

COMPONENT_TYPE_INDEX = "i"

COMPONENT_TYPE_LEVEL

COMPONENT_TYPE_LEVEL = "l"

COMPONENT_TYPE_WEIGHT

COMPONENT_TYPE_WEIGHT = "w"

COMPONENT_TYPE_NAME_ABBREVIATION

COMPONENT_TYPE_NAME_ABBREVIATION = "a"

MATCH_CANDIDATE_COMPONENT_INDEX

MATCH_CANDIDATE_COMPONENT_INDEX = "i"

MATCH_CANDIDATE_MATCH_TYPE

MATCH_CANDIDATE_MATCH_TYPE = "t"

MATCH_CANDIDATE_MATCH_CONSTRAINT

MATCH_CANDIDATE_MATCH_CONSTRAINT = "ct"

MATCH_CANDIDATE_POSITION_CONSTRAINT

MATCH_CANDIDATE_POSITION_CONSTRAINT = "p"

MATCH_CANDIDATE_LOOKAROUND_CONSTRAINT

MATCH_CANDIDATE_LOOKAROUND_CONSTRAINT = "l"

MATCH_CANDIDATE_CONSTRAINT_GROUP

MATCH_CANDIDATE_CONSTRAINT_GROUP = "g"

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS = "pr"

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES = "c"

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_PROPERTY

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_PROPERTY = "p"

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_OPERATOR

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_OPERATOR = "o"

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_VALUE

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_VALUE = "v"

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_TYPE

MATCH_CANDIDATE_PROPERTY_CONSTRAINTS_COMPARISON_PROPERTIES_TYPE = "c"

MATCH_CANDIDATE_ADDITIONAL_ACTIONS

MATCH_CANDIDATE_ADDITIONAL_ACTIONS = "a"

MATCH_CANDIDATE_ADDITIONAL_ACTIONS_COMPONENT_TYPES_TO_REMOVE

MATCH_CANDIDATE_ADDITIONAL_ACTIONS_COMPONENT_TYPES_TO_REMOVE = "r"

POSITION_CONSTRAINT_MIN_POS

POSITION_CONSTRAINT_MIN_POS = "n"

POSITION_CONSTRAINT_MAX_POS

POSITION_CONSTRAINT_MAX_POS = "x"

LOOKAROUND_CONSTRAINT_TO_FIND_COMPONENT_INDEX

LOOKAROUND_CONSTRAINT_TO_FIND_COMPONENT_INDEX = "i"

LOOKAROUND_CONSTRAINT_MIN_OFFSET

LOOKAROUND_CONSTRAINT_MIN_OFFSET = "n"

LOOKAROUND_CONSTRAINT_MAX_OFFSET

LOOKAROUND_CONSTRAINT_MAX_OFFSET = "x"

COMPONENT_ID

COMPONENT_ID = "id"

COMPONENT_TYPE_ID

COMPONENT_TYPE_ID = "t"

COMPONENT_WEIGHT

COMPONENT_WEIGHT = "w"

COMPONENT_PARENT_INDEX

COMPONENT_PARENT_INDEX = "p"

COMPONENT_INHERIT_FROM_INDEX

COMPONENT_INHERIT_FROM_INDEX = "i"

COMPONENT_STOCK_CHILD_INDEX

COMPONENT_STOCK_CHILD_INDEX = "s"

COMPONENT_PROPERTY_VALUE

COMPONENT_PROPERTY_VALUE = "v"

COMPONENT_PRECEDES_DYNAMIC_PROPERTY

COMPONENT_PRECEDES_DYNAMIC_PROPERTY = "pr"

COMPONENT_DYNAMIC_PROPERTIES

COMPONENT_DYNAMIC_PROPERTIES = "d"

COMPONENT_STOCK_CHILD_INHERIT_DYNAMIC_PROPERTIES

COMPONENT_STOCK_CHILD_INHERIT_DYNAMIC_PROPERTIES = "sd"

COMPONENT_DYNAMIC_VALUE_PRECEDING_COMPONENT_INDEX

COMPONENT_DYNAMIC_VALUE_PRECEDING_COMPONENT_INDEX = "i"

COMPONENT_DYNAMIC_VALUE_EXTRACTOR_INDEX

COMPONENT_DYNAMIC_VALUE_EXTRACTOR_INDEX = "e"

COMPONENT_VERSION_SPECIFIC_CHILDREN

COMPONENT_VERSION_SPECIFIC_CHILDREN = "vc"

COMPONENT_START_VERSION

COMPONENT_START_VERSION = "sv"

COMPONENT_END_VERSION

COMPONENT_END_VERSION = "ev"

COMPONENT_VERSION_SPECIFIC_CHILDREN_PROPERTY_INDEX

COMPONENT_VERSION_SPECIFIC_CHILDREN_PROPERTY_INDEX = "p"

COMPONENT_VERSION_SPECIFIC_CHILDREN_MAX_VERSION_PARTS

COMPONENT_VERSION_SPECIFIC_CHILDREN_MAX_VERSION_PARTS = "m"

COMPONENT_VERSION_SPECIFIC_CHILDREN_COMPONENTS

COMPONENT_VERSION_SPECIFIC_CHILDREN_COMPONENTS = "c"

DYNAMIC_VALUE_EXTRACTOR_TYPE

DYNAMIC_VALUE_EXTRACTOR_TYPE = "t"

CONSTRAINT_GROUP_LOOKAROUND_CONSTRAINT

CONSTRAINT_GROUP_LOOKAROUND_CONSTRAINT = "l"

JSON_DATA_TYPE_BOOLEAN

JSON_DATA_TYPE_BOOLEAN = 'b'

JSON_DATA_TYPE_INTEGER

JSON_DATA_TYPE_INTEGER = 'i'

JSON_DATA_TYPE_STRING

JSON_DATA_TYPE_STRING = 's'

Properties

$json

$json : 

Type

$metaData

$metaData : 

Type

$propertyNames

$propertyNames : 

Type

$propertyDataTypes

$propertyDataTypes : 

Type

$propertyValues

$propertyValues : 

Type

$components

$components : 

Type

$idToComponentType

$idToComponentType : 

Type

$maxComponentTypeId

$maxComponentTypeId : 

Type

$dynamicValueExtractors

$dynamicValueExtractors : 

Type

$delimitersHandler

$delimitersHandler : 

Type

$tokenTrie

$tokenTrie : 

Type

$inputs

$inputs : 

Type

$constraintGroups

$constraintGroups : 

Type

$maxStockChildLevel

$maxStockChildLevel : 

Type

$stockChildIndexesInheritDynamicProperties

$stockChildIndexesInheritDynamicProperties : 

Type

$componentToVersionSpecificChildren

$componentToVersionSpecificChildren : 

Type

$propertyValueCache

$propertyValueCache : 

Type

$propertyValueCacheBooleans

$propertyValueCacheBooleans : 

Type

Methods

__construct()

__construct(  $data) 

Parameters

$data
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

parse()

parse() : \DeviceAtlas\Device\DeviceData

Parse and prepare the device data from the JSON.

{ "$": [object] $==Meta data [mandatory] "p": [array] p==Property names [mandatory] "v": [array] v==Values [mandatory] "d": [array] d==Codepoint delimiters [mandatory] "t": [array] t==Component Types [mandatory] "e": [array] e==Dynamic value extractors [optional] "cg": [array] cg==Constraint Groups [optional] "c": [array] c==Components [mandatory] "tr":[Object] tr==Token Trie [mandatory] "i": [array] i==Inputs [mandatory] }

IMPORTANT: The above keys are ordered by the JSON Generator to be in a predictable and optimal order. This is helpful as certain objects are required by other objects which are loaded later.

Throws

\DeviceAtlas\Exception\JsonException

Returns

\DeviceAtlas\Device\DeviceData

getDataTypeId()

getDataTypeId(  $type) 

Get data type id by data type character from JSON "s", "b", "i".

Parameters

$type
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getMetaData()

getMetaData() : \DeviceAtlas\Device\MetaData

Parse the file meta data.

"$": { "version": string File Version [mandatory] "copyright": string "created": string File generation date/time ISO8601 [mandatory] "case": string Case==The character casing of the file [optional] }

Throws

\DeviceAtlas\Exception\JsonException

Returns

\DeviceAtlas\Device\MetaData

getPropertiesAsPropertyNameObjects()

getPropertiesAsPropertyNameObjects() : array

Get the Property Names. Note the order of the names is critical. They are referenced by index in other parts of the data file.

The property names are found in an array with the following structure [ { "n": string n==Property Name [mandatory] "t": char t==Property Type [mandatory] }, {...}, {...}, ... ]

Throws

\DeviceAtlas\Exception\JsonException

Returns

array

getPropertyNames()

getPropertyNames() 

Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getPropertyDataTypes()

getPropertyDataTypes() 

Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getPropertyName()

getPropertyName(  $jsonPropertyNames) : \DeviceAtlas\PropertyName

Get an individual property name from the following stucture:

{ "n": string n==Property Name [mandatory] "t": char-string t==Property Type [mandatory] }

Parameters

$jsonPropertyNames
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

Returns

\DeviceAtlas\PropertyName

getCodePointDelimiters()

getCodePointDelimiters() : \DeviceAtlas\Device\DelimitersHandler

The delimiter codepoints are an array of integers.

[1,5,12,41... etc]

Throws

\DeviceAtlas\Exception\JsonException

Returns

\DeviceAtlas\Device\DelimitersHandler

getComponentTypes()

getComponentTypes() : array

The component types is an array of component type objects. Example structure:

[ { "i": short, i==Component Type ID "a": string, a==Single char name abbreviation (e.g. b=browser, a=app etc) "l": integer, l==Component type level "w": integer w==Component type weight }, .... ]

All fields are mandatory.

Throws

\DeviceAtlas\Exception\JsonException

Returns

array

extractComponents()

extractComponents() : array<mixed,array>

Extracts the components. A Component may reference parent or inheritFrom Components. To handle this, all components are loaded and the component index for the parent and inheritFrom is recorded. A second pass over the components converts the index into an actual component.

The components have the following structure:

[ {component object}, {component object}, ... {component object} ]

The index of each Component in the array is very important. It is used as a lookup to get a Component when creating the Token Trie and other objects.

Throws

\DeviceAtlas\Exception\JsonException

Returns

array<mixed,array>

getComponent()

getComponent(  $componentIndex,   $jsonComponent) 

Parameters

$componentIndex
$jsonComponent
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

checkComponent()

checkComponent(  $componentIndex,   $jsonComponent) 

Parameters

$componentIndex
$jsonComponent
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getComponentPropertyValues()

getComponentPropertyValues(  $jsonComponentPropertyValue) : array

Gets the property/values for a component. The returned Map uses the property name ID as the key. The property/values have the following structure:

{ "integer-string":integer, ==> "propertyNameId":propertyValueId ... "integer-string":integer }

Parameters

$jsonComponentPropertyValue
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

Returns

array

getPropertyValue()

getPropertyValue(  $valueIndex,   $dataTypeId) 

Parameters

$valueIndex
$dataTypeId
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getComponentDynamicProperties()

getComponentDynamicProperties(array  $jsonComponentDynamicProperties) : array

The Dynamic Properties for a component is a Map of property name ID to an array of DynamicValues. Each Dynamic Value defines a component that must exist before the dynamic value and the dynamic value extractor.

have the following structure:

{ "integer-string": [array of objects], ==> "propertyNameId": [{dynamicValueObj}] ..... "integer-string": [] }

Parameters

array $jsonComponentDynamicProperties

Throws

\DeviceAtlas\Exception\JsonException

Returns

array —

of Property Name ID to DynamicValue[]

getComponentDynamicValuesArray()

getComponentDynamicValuesArray(  $jsonComponentDynamicValuesArray) : array

A component may have properties that are populated dynamically at runtime.

Each dynamic property may have one or more dynamic value extractors associated to it. This is to handle the case where there may be multiple possible values present. The order of the extractors defines the priority. For example,

User-Agent: Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.9.168 Version/11.50

Property Name: browserVersion ==> the version string may be present either after "Opera" or after "Version" if the "Version" token is present. The property therefore needs two dynamic value extractors associated with it.

extractor 1: value after Opera
extractor 2: value after Version (if it is present)

The dynamic values for a given property within a component have the following structure:

"prop_name_id": [{"i":integer, i==Index of Component preceding a dynamic value [mandatory] "e":integer e==Index of Dynamic Value Extractor [mandatory] }, ...]

Parameters

$jsonComponentDynamicValuesArray

Throws

\DeviceAtlas\Exception\JsonException

Returns

array

getComponentDynamicValue()

getComponentDynamicValue(  $jsonComponentDynamicValues) : \DeviceAtlas\Device\DynamicValue

Get the DynamicValue object. This has the structure of:

{ "i":integer, i==Index of Component preceding a dynamic value "e":integer e==Index of Dynamic Value Extractor }

Parameters

$jsonComponentDynamicValues

Throws

\DeviceAtlas\Exception\JsonException

Returns

\DeviceAtlas\Device\DynamicValue

getVersionedSpecificChildren()

getVersionedSpecificChildren(  $componentIndex,   $jsonComponentVersionSpecificChildren) : \DeviceAtlas\Device\VersionSpecificChildren

Extract the version-specific children:

"vc": { "p": integer (p == property name id [mandatory]) "m": integer, (m == max version parts [mandatory]) "c": [ordered array], (c == version-specific child components [optional] ) }

Parameters

$componentIndex
$jsonComponentVersionSpecificChildren

Throws

\DeviceAtlas\Exception\JsonException

Returns

\DeviceAtlas\Device\VersionSpecificChildren

extractRootInputs()

extractRootInputs() : \DeviceAtlas\Device\Inputs

Extracts the inputs that are used for device detection. The inputs consists of a set of identifiers and property mappings:

"i": { (i == inputs [root level] [mandatory]) "l": [array of objects], (l == input list [mandatory]) "id": [array of objects], (id == identifiers by component type[mandatory]) "pm": [array of objects] (p == property mappings [mandatory]) }

Throws

\DeviceAtlas\Exception\JsonException

Returns

\DeviceAtlas\Device\Inputs

extractInputs()

extractInputs(  $jsonInputsList) : array

Extracts the ordered list of inputs to use for Token Detection.

This has the structure:

"l": [ (l == identifier list) { (index== 0, referenced by other objects) "n": string, (n == identifier key [mandatory]) "s": string, (s == source(s) h==HTTP, c==Client side JS [mandatory]) "q": boolean, (q == if true, ensure source value is CH double quoted. },

Parameters

$jsonInputsList
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

Returns

array

extractInput()

extractInput(  $jsonInput) 

Parameters

$jsonInput
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

extractIdentifiersByComponentType()

extractIdentifiersByComponentType(  $inputs,   $jsonInputsIdentifiersByComponentTypes) 

Extract an ordered list of identifiers by component type:

"id": [ { (id == identifiers by type) "t": integer, (t == component type index [mandatory]) "i":[integer array], (i == input indexes [mandatory]) "o":[{input-object}] (o == ordered inputs [mandatory]) }, … more identifier by type objects ]

Parameters

$inputs
$jsonInputsIdentifiersByComponentTypes
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

extractIdentifierByComponentType()

extractIdentifierByComponentType(  $inputs,   $identifiersByComponentType,   $jsonInputsIdentifier) 

Parameters

$inputs
$identifiersByComponentType
$jsonInputsIdentifier
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getDependentIdentifiers()

getDependentIdentifiers(  $inputs,   $jsonDependentIdentifiers) 

Extracts the array of dependent identifiers:

"o":[ (o == ordered inputs [mandatory])

 {
   "i": integer,         (i == identifier input index         [mandatory])
   "a": [integer array]  (a == associated inputs              [optional])
 },
 … more input objects …

],

Parameters

$inputs
$jsonDependentIdentifiers
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getDependentIdentifier()

getDependentIdentifier(  $inputs,   $jsonDependentIdentifier) 

Parameters

$inputs
$jsonDependentIdentifier
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

extractPropertyMappings()

extractPropertyMappings(  $inputs,   $jsonInputsPropertyMappings) 

Extracts an array of property mapping objects to assign identifier values to DeviceAtlas properties.

"pm": [ (p == property mappings) { "integer": (key is the DA property name id [mandatory]) [ (array of sources for this DA property) {"i":integer, (i == input index (from above) [mandatory]) // one of: "tt":{ (tr == trim transformation) [optional]) "b":string, (b == before characters to remove) "a":string, (a == after characters to remove) }

     // or:
       "ct":{[              (ct == comparison transformation)    [optional])
            "o":"string",   (o == operator, e.g. “=” or “!=”)
            "c":"string",   (c == comparison value, e.g. “?1”)
            "r":integer     (r == return value, index into value array)
          },
           … optionally more comparisons
          ]
        },
        "v":{              (v == validation                      [optional])
            "l":integer,    (l == max length validation         [optional])
            "n":{           (n == numeric string validation     [optional])
                "s":"char",   (s == separator character         [optional])
                "n":integer,  (n == min count of separators     [mandatory])
                "x":integer,  (x == max count of separators     [mandatory])

          }
        }
    ]}
   … optionally more sources for this DA property

  },
 … more property mapping objects
]

Parameters

$inputs
$jsonInputsPropertyMappings

Throws

\DeviceAtlas\Exception\JsonException

extractPropertyMappingSources()

extractPropertyMappingSources(  $inputs,   $propertyDataTypeId,   $jsonPropertyMappingSources) 

Parameters

$inputs
$propertyDataTypeId
$jsonPropertyMappingSources
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

extractPropertyMappingSource()

extractPropertyMappingSource(  $inputs,   $propertyDataTypeId,   $jsonPropertyMappingSource) 

Parameters

$inputs
$propertyDataTypeId
$jsonPropertyMappingSource
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

extractTrimTransformer()

extractTrimTransformer(  $jsonInputsPropertyMappingsTrimTransformation) 

Parameters

$jsonInputsPropertyMappingsTrimTransformation
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

extractComparisonTransformers()

extractComparisonTransformers(  $propertyDataTypeId,   $jsonInputsPropertyMappingsComparisonTransformation) 

Parameters

$propertyDataTypeId
$jsonInputsPropertyMappingsComparisonTransformation
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

extractComparisonTransformer()

extractComparisonTransformer(  $propertyDataTypeId,   $jsonComparisonTransformer) 

Parameters

$propertyDataTypeId
$jsonComparisonTransformer
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

extractPropertyMappingValidator()

extractPropertyMappingValidator(  $jsonPropertyMappingValidator) 

Parameters

$jsonPropertyMappingValidator
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

extractPropertyMappingNumericValidator()

extractPropertyMappingNumericValidator(  $jsonPropertyMappingValidatorNumericString) 

Parameters

$jsonPropertyMappingValidatorNumericString
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getConstraintGroups()

getConstraintGroups() : array

Get the (optional) list of Constraint Groups. A match candidate that has a Constraint Group references it via the list index.

[ {Constraint Group object}, {Constraint Group object}, ... {Constraint Group object} ]

Throws

\DeviceAtlas\Exception\JsonException

Returns

array

getConstraintGroup()

getConstraintGroup(  $jsonConstraintGroup) 

[ Match Constraint (array of Lookaround Constraints), Match Constraint, .

.. ...More match constraint ]

Parameters

$jsonConstraintGroup
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getMatchConstraint()

getMatchConstraint(  $jsonMatchConstraint) 

{ "l": [ (l == Lookaround Constraint [optional]) { "i": 0, (i == To Find Component Index [mandatory]) "n": 0, (n == Min Offset [mandatory]) "x": 0 (x == Max Offset [mandatory]) }, .

..more lookaround constraints ] }

Parameters

$jsonMatchConstraint
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getTokenTrie()

getTokenTrie() 

Extract the Token Trie that is used for matching the tokens of incoming identifiers and returning matched components.

The Token Trie is a deeply nested collection of objects. It is more efficient to use a custom parser than rely on the generic getObject() method of the JSON tokeniser class as it would create a lot of temporary objects that would just be discarded.

Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

traverse()

traverse(  $parentNode) : 

Traverse the JSON structure and create the Trie of Nodes for the token start and direct child nodes.

{ "t": {nodes...}, t==Token Start Child [mandatory] "c": {nodes...}, c==Direct Child [mandatory] "m": [match candidates] m==Match Candidates [mandatory] }

See the Node class for further details on Token Start and Direct child nodes.

Parameters

$parentNode

Throws

\DeviceAtlas\Exception\JsonException

Returns

getMatchCandidates()

getMatchCandidates(  $jsonMatchCandidates) : array|null

Get the Match Candidates for token match in the Trie. This has the structure:

[ {match candidate}, {match candidate}, ... {match candidate}, ]

Parameters

$jsonMatchCandidates

Throws

\DeviceAtlas\Exception\JsonException

Returns

array|null

getMatchCandidate()

getMatchCandidate(  $jsonMatchCandidates) : \DeviceAtlas\Device\MatchCandidate

A match candidate has the following structure:

{ "i": integer, i==Component Index [mandatory] "t": "eq"|"sw", r==Match Type (defaults to EQUALS if missing) [optional] "ct": {constraints} ct==Constraints (see constraints section) [optional] "g": integer g==Constraint Group Index [optional] }

Parameters

$jsonMatchCandidates

Throws

\DeviceAtlas\Exception\JsonException

Returns

\DeviceAtlas\Device\MatchCandidate

getConstraints()

getConstraints(  $jsonMatchCandidateMatchConstraint) : array

Get the match candidate constraints. Constraints have the following structure.

Either one or both constraints will be set if constraints exist for a match candidate.

{ "p":{object}, p==Position Constraint [optional] "l":[array] l==Lookaround Constraints [optional] "g":integer g=Constraint Group index [optional] }

Parameters

$jsonMatchCandidateMatchConstraint

Throws

\DeviceAtlas\Exception\JsonException

Returns

array

getPositionConstraint()

getPositionConstraint(  $jsonPositionConstraint) : 

The position constraint with structure:

{ "n":integer, n==Min position (positive integer) [mandatory] "x":integer x==Max position (positive integer) [mandatory] }

Parameters

$jsonPositionConstraint

Throws

\DeviceAtlas\Exception\JsonException

Returns

getLookaroundConstraints()

getLookaroundConstraints(  $jsonConstraintGroupLookaroundConstraint) : array

The lookaround constraints with structure:

[ {lookaround constraint}, .... ]

Parameters

$jsonConstraintGroupLookaroundConstraint

Throws

\DeviceAtlas\Exception\JsonException

Returns

array

getLookaroundConstraint()

getLookaroundConstraint(  $jsonLookaroundConstraint) : \DeviceAtlas\Device\LookaroundConstraint

Gets a LookaroundConstraint object. These have the following structure:

{ "i": integer, i==To Find Component Index [mandatory] "n": integer, n==Min offset (positive or negative integer) [mandatory] "x": integer x==Max offset (positive or negative integer) [mandatory] },

Parameters

$jsonLookaroundConstraint
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

Returns

\DeviceAtlas\Device\LookaroundConstraint

getDynamicValueExtractors()

getDynamicValueExtractors() : array

Get the dynamic value extractors. This is an array of unique extractors with the structure:

[ {Dynamic value object}, ... ]

Each Dynamic Value extractor has three possible forms with a common extractor type field in each:

{ "t":"s|v|r", t==Extractor Type ...other fields... }

The "other" fields depend on the type as follows:

"String" type: { "t":"s", t==Extractor Type, s==String Type [mandatory] "db":[integer array], db==Delimiters before (codepoints) [optional] "da":[integer array] da==Delimiters after (codepoints) [optional] }

"Version" type: { "t":"v", t==Extractor Type, s==Version Type [mandatory] "db": [integer array], db==Delimiters before (codepoints) [optional] "p": "string", p==Version Prefix [optional] "k": true|false, k==Keep Prefix [optional] "ds":"char", ds==Decimal Separator [mandatory] "a": true|false, a==Suffix Allowed [mandatory] "ss":"char", ss==Suffix Separator [optional] "da":[integer array] da==Delimiters after (codepoints) [optional] }

"Regex" type: { "t":"r", t==Extractor Type, s==Regex Type [mandatory] "d":"regex string", d==Default Regex [mandatory] "o":{"API_ID":"override regex} o==API Specific Regex override [optional] }

Throws

\DeviceAtlas\Exception\JsonException

Returns

array

getPropertyConstraints()

getPropertyConstraints(  $jsonPropertyConstraints) : array

Extracts the property constraints for a match candidate.

The property constraints have the following structure:

[ {property constraints rule object 1}, {property constraints rule object 2}, … {property constraints rule object n} ]

Parameters

$jsonPropertyConstraints

Throws

\DeviceAtlas\Exception\JsonException

Returns

array

getPropertyConstraint()

getPropertyConstraint(  $jsonPropertyConstraint) : \DeviceAtlas\Device\PropertyConstraint

Each property constraint is comprised of the following:

{ (Property Constraint object)

 "s": ["string"]       (s == source                         [optional])
 "c": [                (c == array of comparison properties [mandatory])
    {comparison property},

            ...More comparison properties ...
 ]

}

Parameters

$jsonPropertyConstraint

Throws

\DeviceAtlas\Exception\JsonException

Returns

\DeviceAtlas\Device\PropertyConstraint

getComparisonProperties()

getComparisonProperties(  $jsonComparisonProperties) 

A comparison property is comprised of a property/value pair and an operator.

{ "p": integer, (p == property name id [mandatory]) "o": "string", (o == operator [mandatory]) "v": integer, (v == value id [mandatory]) "c": "string", (c == compare as [mandatory]) }

Parameters

$jsonComparisonProperties

Throws

\DeviceAtlas\Exception\JsonException

getComparisonProperty()

getComparisonProperty(  $jsonComparisonProperty) 

Parameters

$jsonComparisonProperty
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getComponentTypeById()

getComponentTypeById(  $componentTypeId) 

Parameters

$componentTypeId
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getAdditionalActions()

getAdditionalActions(  $jsonAdditionalActions) 

Extracts the match constraints additional actions

{ "r": { (r == to remove/replace [optional]) "numeric-string": integer|null, (key=component type id, value=component idx or null) ... component type/components } }

Parameters

$jsonAdditionalActions
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275

getComponentsToReplace()

getComponentsToReplace(  $jsonComponentTypesToRemove) 

Parameters

$jsonComponentTypesToRemove
Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275 Warning: count(): Parameter must be an array or an object that implements Countable in /opt/phpdoc/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275