public function updateJoinOptions(Queries\Common\Join\Options $options)
{
$filter = $options->getFilter();
if ($filter instanceof Queries\Common\Join\Filter\Custom) {
$filter = $filter->update($this->expressionProcessor->processFunction($filter->getOnFunction()));
} elseif ($filter instanceof Queries\Common\Join\Filter\Equality) {
$filter = $filter->update($this->expressionProcessor->processFunction($filter->getOuterKeyFunction()), $this->expressionProcessor->processFunction($filter->getInnerKeyFunction()));
}
return $options->update($options->getSource(), $options->isGroupJoin(), $filter, $options->hasDefault());
}