public function objects(array $options = [])
{
$options['pageToken'] = null;
$includeVersions = isset($options['versions']) ? $options['versions'] : false;
do {
$response = $this->connection->listObjects($options + $this->identity);
if (!array_key_exists('items', $response)) {
break;
}
foreach ($response['items'] as $object) {
$generation = $includeVersions ? $object['generation'] : null;
(yield new StorageObject($this->connection, $object['name'], $this->identity['bucket'], $generation, $object));
}
$options['pageToken'] = isset($response['nextPageToken']) ? $response['nextPageToken'] : null;
} while ($options['pageToken']);
}