PHP Class Neos\Eel\FlowQuery\FizzleParser

This is the parser for a CSS-like selector language for Objects and Content Repository Nodes. You can think of it as "Sizzle for PHP" (hence the name).
Inheritance: extends Neos\Eel\AbstractParser
Show file Open project: neos/flow-development-collection Class Usage Examples

Protected Properties

Property Type Description
$match_AttributeFilter_typestack * AttributeFilter: '[' S ( ( Operator:( 'instanceof' | '!instanceof' ) S ( Operand:StringLiteral | Operand:UnquotedOperand ) S ) | ( :Identifier S ( Operator:( 'instanceof' | '!instanceof' | PrefixMatch | SuffixMatch | SubstringMatch | ExactMatch | NotEqualMatch | LessThanOrEqualMatch | LessThanMatch | GreaterThanOrEqualMatch | GreaterThanMatch ) S ( Operand:StringLiteral | Operand:NumberLiteral | Operand:BooleanLiteral | Operand:UnquotedOperand ) S )? ) ) S ']'
$match_ExactMatch_typestack * ExactMatch: '='
$match_FilterGroup_typestack * FilterGroup: :Filter ( S ',' S :Filter )*
$match_Filter_typestack * Filter: ( PathFilter | IdentifierFilter | PropertyNameFilter )? ( AttributeFilters:AttributeFilter )*
$match_GreaterThanMatch_typestack * GreaterThanMatch: '>'
$match_GreaterThanOrEqualMatch_typestack * GreaterThanOrEqualMatch: '>='
$match_IdentifierFilter_typestack * IdentifierFilter: '#':ObjectIdentifier
$match_LessThanMatch_typestack * LessThanMatch: '<'
$match_LessThanOrEqualMatch_typestack * LessThanOrEqualMatch: '<='
$match_NotEqualMatch_typestack * NotEqualMatch: '!='
$match_ObjectIdentifier_typestack * ObjectIdentifier: / [0-9a-zA-Z_-]+ /
$match_PathFilter_typestack * PathFilter: ( '/' ( Identifier ( '/' Identifier )* )? ) | ( Identifier '/' Identifier ( '/' Identifier )* )
$match_PrefixMatch_typestack * PrefixMatch: '^='
$match_PropertyNameFilter_typestack * PropertyNameFilter: Identifier
$match_SubstringMatch_typestack * SubstringMatch: '*='
$match_SuffixMatch_typestack * SuffixMatch: '$='
$match_UnquotedOperand_typestack * UnquotedOperand: / [^"'\[\]\s]+ /

Public Methods

Method Description
AttributeFilter_Identifier ( &$result, $sub )
AttributeFilter_Operand ( &$result, $sub )
AttributeFilter_Operator ( &$result, $sub )
AttributeFilter__construct ( &$result )
BooleanLiteral__finalise ( &$self )
FilterGroup_Filter ( &$result, $sub )
Filter_AttributeFilters ( &$result, $sub )
Filter_IdentifierFilter ( &$result, $sub )
Filter_PathFilter ( &$result, $sub )
Filter_PropertyNameFilter ( &$result, $sub )
NumberLiteral__finalise ( &$self )
PropertyNameFilter_Identifier ( &$result, $sub )
UnquotedOperand__finalise ( &$self )
match_AttributeFilter ( $stack = [] )
match_ExactMatch ( $stack = [] )
match_Filter ( $stack = [] )
match_FilterGroup ( $stack = [] )
match_GreaterThanMatch ( $stack = [] )
match_GreaterThanOrEqualMatch ( $stack = [] )
match_IdentifierFilter ( $stack = [] )
match_LessThanMatch ( $stack = [] )
match_LessThanOrEqualMatch ( $stack = [] )
match_NotEqualMatch ( $stack = [] )
match_ObjectIdentifier ( $stack = [] )
match_PathFilter ( $stack = [] )
match_PrefixMatch ( $stack = [] )
match_PropertyNameFilter ( $stack = [] )
match_SubstringMatch ( $stack = [] )
match_SuffixMatch ( $stack = [] )
match_UnquotedOperand ( $stack = [] )
parseFilterGroup ( $filter )

Method Details

AttributeFilter_Identifier() public method

public AttributeFilter_Identifier ( &$result, $sub )

AttributeFilter_Operand() public method

public AttributeFilter_Operand ( &$result, $sub )

AttributeFilter_Operator() public method

public AttributeFilter_Operator ( &$result, $sub )

AttributeFilter__construct() public method

public AttributeFilter__construct ( &$result )

BooleanLiteral__finalise() public method

public BooleanLiteral__finalise ( &$self )

FilterGroup_Filter() public method

public FilterGroup_Filter ( &$result, $sub )

Filter_AttributeFilters() public method

public Filter_AttributeFilters ( &$result, $sub )

Filter_IdentifierFilter() public method

public Filter_IdentifierFilter ( &$result, $sub )

Filter_PathFilter() public method

public Filter_PathFilter ( &$result, $sub )

Filter_PropertyNameFilter() public method

public Filter_PropertyNameFilter ( &$result, $sub )

NumberLiteral__finalise() public method

public NumberLiteral__finalise ( &$self )

PropertyNameFilter_Identifier() public method

public PropertyNameFilter_Identifier ( &$result, $sub )

UnquotedOperand__finalise() public method

public UnquotedOperand__finalise ( &$self )

match_AttributeFilter() public method

public match_AttributeFilter ( $stack = [] )

match_ExactMatch() public method

public match_ExactMatch ( $stack = [] )

match_Filter() public method

public match_Filter ( $stack = [] )

match_FilterGroup() public method

public match_FilterGroup ( $stack = [] )

match_GreaterThanMatch() public method

public match_GreaterThanMatch ( $stack = [] )

match_GreaterThanOrEqualMatch() public method

public match_GreaterThanOrEqualMatch ( $stack = [] )

match_IdentifierFilter() public method

public match_IdentifierFilter ( $stack = [] )

match_LessThanMatch() public method

public match_LessThanMatch ( $stack = [] )

match_LessThanOrEqualMatch() public method

public match_LessThanOrEqualMatch ( $stack = [] )

match_NotEqualMatch() public method

public match_NotEqualMatch ( $stack = [] )

match_ObjectIdentifier() public method

public match_ObjectIdentifier ( $stack = [] )

match_PathFilter() public method

public match_PathFilter ( $stack = [] )

match_PrefixMatch() public method

public match_PrefixMatch ( $stack = [] )

match_PropertyNameFilter() public method

public match_PropertyNameFilter ( $stack = [] )

match_SubstringMatch() public method

public match_SubstringMatch ( $stack = [] )

match_SuffixMatch() public method

public match_SuffixMatch ( $stack = [] )

match_UnquotedOperand() public method

public match_UnquotedOperand ( $stack = [] )

parseFilterGroup() public static method

public static parseFilterGroup ( $filter )

Property Details

$match_AttributeFilter_typestack protected property

* AttributeFilter: '[' S ( ( Operator:( 'instanceof' | '!instanceof' ) S ( Operand:StringLiteral | Operand:UnquotedOperand ) S ) | ( :Identifier S ( Operator:( 'instanceof' | '!instanceof' | PrefixMatch | SuffixMatch | SubstringMatch | ExactMatch | NotEqualMatch | LessThanOrEqualMatch | LessThanMatch | GreaterThanOrEqualMatch | GreaterThanMatch ) S ( Operand:StringLiteral | Operand:NumberLiteral | Operand:BooleanLiteral | Operand:UnquotedOperand ) S )? ) ) S ']'
protected $match_AttributeFilter_typestack

$match_ExactMatch_typestack protected property

* ExactMatch: '='
protected $match_ExactMatch_typestack

$match_FilterGroup_typestack protected property

* FilterGroup: :Filter ( S ',' S :Filter )*
protected $match_FilterGroup_typestack

$match_Filter_typestack protected property

* Filter: ( PathFilter | IdentifierFilter | PropertyNameFilter )? ( AttributeFilters:AttributeFilter )*
protected $match_Filter_typestack

$match_GreaterThanMatch_typestack protected property

* GreaterThanMatch: '>'
protected $match_GreaterThanMatch_typestack

$match_GreaterThanOrEqualMatch_typestack protected property

* GreaterThanOrEqualMatch: '>='
protected $match_GreaterThanOrEqualMatch_typestack

$match_IdentifierFilter_typestack protected property

* IdentifierFilter: '#':ObjectIdentifier
protected $match_IdentifierFilter_typestack

$match_LessThanMatch_typestack protected property

* LessThanMatch: '<'
protected $match_LessThanMatch_typestack

$match_LessThanOrEqualMatch_typestack protected property

* LessThanOrEqualMatch: '<='
protected $match_LessThanOrEqualMatch_typestack

$match_NotEqualMatch_typestack protected property

* NotEqualMatch: '!='
protected $match_NotEqualMatch_typestack

$match_ObjectIdentifier_typestack protected property

* ObjectIdentifier: / [0-9a-zA-Z_-]+ /
protected $match_ObjectIdentifier_typestack

$match_PathFilter_typestack protected property

* PathFilter: ( '/' ( Identifier ( '/' Identifier )* )? ) | ( Identifier '/' Identifier ( '/' Identifier )* )
protected $match_PathFilter_typestack

$match_PrefixMatch_typestack protected property

* PrefixMatch: '^='
protected $match_PrefixMatch_typestack

$match_PropertyNameFilter_typestack protected property

* PropertyNameFilter: Identifier
protected $match_PropertyNameFilter_typestack

$match_SubstringMatch_typestack protected property

* SubstringMatch: '*='
protected $match_SubstringMatch_typestack

$match_SuffixMatch_typestack protected property

* SuffixMatch: '$='
protected $match_SuffixMatch_typestack

$match_UnquotedOperand_typestack protected property

* UnquotedOperand: / [^"'\[\]\s]+ /
protected $match_UnquotedOperand_typestack