Inicialice la variable de instancia perezosa con un valor que depende de otras variables de instancia

La siguiente inicialización actualmente produce este error en la línea que llamagetEventCalendar:

No se puede usar el miembro de instancia 'getEventCalendar' dentro del inicializador de propiedad; los inicializadores de propiedad se ejecutan antes de que 'self' esté disponible.

¿Hay alguna forma adecuada de inicializar ellazy variable de instancia con un valor que depende de otro tipo de objetoinstance variables deself (No soloself solo)? Yo p. trató de girargetEventCalendar de un método a una función, pero esto tampoco ayuda.

class AbstractEventCalendarClient {

  let eventStore: EKEventStore
  let entityType: EKEntityType

  lazy var eventCalendar = getEventCalendar()

  init(eventStore: EKEventStore, entityType: EKEntityType) {
    self.eventStore = eventStore
    self.entityType = entityType
  }

  func getEventCalendar() -> EKCalendar? {
    // ...
  }
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta