private function getRootGenerator($throw, $value, &$return)
{
try {
if ($throw !== null) {
$key = $throw ? null : CoInterface::SAFE;
} else {
$key = $this->options['throw'] ? null : CoInterface::SAFE;
}
$return = (yield $key => $value);
return;
} catch (\Throwable $e) {
} catch (\Exception $e) {
}
$this->pool->reserveHaltException($e);
}