public function nativeToDatumOrFunction($f, $wrapImplicit = true)
{
if (!(is_object($f) && is_subclass_of($f, '\\r\\Query'))) {
try {
$f = $this->nativeToDatum($f);
if (!is_subclass_of($f, '\\r\\Datum\\Datum')) {
// $f is not a simple datum. Wrap it into a function:
$f = new RFunction(array(new RVar('_')), $f);
}
} catch (RqlDriverError $e) {
$f = $this->nativeToFunction($f);
}
}
if ($wrapImplicit) {
return $this->wrapImplicitVar($f);
} else {
return $f;
}
}