*/ protected $objects; /** * Set the involved objects * * @param Traversable $objects * * @return $this */ public function setObjects(Traversable $objects): self { $this->objects = $objects; return $this; } /** * Set the involved object * * @param Model $object * * @return $this * * @deprecated Use setObjects() instead */ public function setObject(Model $object): self { return $this->setObjects(new ArrayIterator([$object])); } /** * Get the involved objects * * @return Traversable */ public function getObjects(): Traversable { if ($this->objects === null) { throw new \LogicException( 'You are accessing an unset property. Please make sure to set it beforehand.' ); } return $this->objects; } }