public function datasets(array $options = [])
{
$options['pageToken'] = null;
do {
$response = $this->connection->listDatasets($options + ['projectId' => $this->projectId]);
if (!isset($response['datasets'])) {
return;
}
foreach ($response['datasets'] as $dataset) {
(yield new Dataset($this->connection, $dataset['datasetReference']['datasetId'], $this->projectId, $dataset));
}
$options['pageToken'] = isset($response['nextPageToken']) ? $response['nextPageToken'] : null;
} while ($options['pageToken']);
}