public function isNeighbour(DateRange $range) { Assert::isTrue(!$this->isOpen() && !$range->isOpen()); if ($this->overlaps($range) || $this->start->spawn('-1 day')->getDayStartStamp() == $range->end->getDayStartStamp() || $this->end->spawn('+1 day')->getDayStartStamp() == $range->start->getDayStartStamp()) { return true; } return false; }