public function topics(array $options = [])
{
$options['pageToken'] = null;
do {
$response = $this->connection->listTopics($options + ['project' => $this->formatName('project', $this->projectId)]);
foreach ($response['topics'] as $topic) {
(yield $this->topicFactory($topic['name'], $topic));
}
// If there's a page token, we'll request the next page.
$options['pageToken'] = isset($response['nextPageToken']) ? $response['nextPageToken'] : null;
} while ($options['pageToken']);
}