return $result;
} return match (true
) { $query instanceof EqualsFilter =>
$this->
parseEqualsFilter($query,
$definition,
$root,
$context,
$negated),
$query instanceof EqualsAnyFilter =>
$this->
parseEqualsAnyFilter($query,
$definition,
$root,
$context),
$query instanceof ContainsFilter =>
$this->
parseContainsFilter($query,
$definition,
$root,
$context),
$query instanceof PrefixFilter =>
$this->
parsePrefixFilter($query,
$definition,
$root,
$context),
$query instanceof SuffixFilter =>
$this->
parseSuffixFilter($query,
$definition,
$root,
$context),
$query instanceof RangeFilter =>
$this->
parseRangeFilter($query,
$definition,
$root,
$context),
$query instanceof NotFilter =>
$this->
parseNotFilter($query,
$definition,
$root,
$context),
$query instanceof MultiFilter =>
$this->
parseMultiFilter($query,
$definition,
$root,
$context,
$negated),
default =>
throw new \
RuntimeException(sprintf('Unsupported query %s',
$query::
class)),
};
} private function parseRangeFilter( RangeFilter
$query,
EntityDefinition
$definition,
string
$root,
Context
$context ): ParseResult
{ $result =
new ParseResult();