buckets = $buckets; } /** * Implementation of \IteratorAggregate::getIterator() * * @return \ArrayIterator */ public function getIterator() { return new \ArrayIterator($this->buckets); } /** * Get Document field * * @param string $bucketName * @return BucketInterface */ public function getBucket($bucketName) { return $this->buckets[$bucketName] ?? null; } /** * Get all Document fields * * @return BucketInterface[] */ public function getBuckets() { return $this->buckets; } /** * Get Document field names * * @return string[] */ public function getBucketNames() { return array_keys($this->buckets); } }