             height: (frame.size.height - CalendarView.Style.headerHeight) / 6.0 // maximum number of rows
         )
     }
-
-    func reloadData() {
-        self.collectionView.reloadData()
-    }
-
-    func setDisplayDate(_ date : Date, animated: Bool = false) {
-        
-        guard (date > startDateCache) && (date < endDateCache) else { return }
-        
-        self.collectionView.setContentOffset(
-            self.scrollViewOffset(for: date),
-            animated: animated
-        )
-        
-        self.displayDateOnHeader(date)
-    }
     
     internal func resetDisplayDate() {
         guard let displayDate = self.displayDate else { return }


public protocol CalendarViewDelegate {
    
    /* optional */ func calendar(_ calendar : CalendarView, canSelectDate date : Date) -> Bool
    func calendar(_ calendar : CalendarView, didScrollToMonth date : Date) -> Void
    func calendar(_ calendar : CalendarView, didSelectDate date : Date, withEvents events: [CalendarEvent]) -> Void
    /* optional */ func calendar(_ calendar : CalendarView, didDeselectDate date : Date) -> Void
}

extension CalendarViewDelegate {

    }
}

// MARK: Convertion

extension CalendarView {
