public static function evaluate(Queries\IScope $scope, Queries\IResolvedParameterRegistry $resolvedParameters) { $sourceInfo = $scope->getSourceInfo(); if (!$sourceInfo instanceof SourceInfo) { throw new PinqException('Incompatible query source: expecting source info of type %s, %s given', SourceInfo::SOURCE_INFO_TYPE, get_class($sourceInfo)); } $evaluator = new self($sourceInfo->getTraversable(), $resolvedParameters); $evaluator->visit($scope); return $evaluator->traversable; }
public static function evaluate(ICollection $collection, Queries\IOperation $operation, Queries\IResolvedParameterRegistry $resolvedParameters) { $evaluator = new self($collection, $resolvedParameters); $evaluator->visit($operation); }
public static function evaluate(ITraversable $traversable, Queries\IRequest $request, Queries\IResolvedParameterRegistry $resolvedParameters) { $evaluator = new self($traversable, $resolvedParameters); return $evaluator->visit($request); }