 
   @doc """
   Returns `true` if two calendars have the same moment of starting a new day,
-  false otherwise.
-
-  If two calendars are compatible, it is possible to convert not only
-  `Time`s and `DateTime`s between them, but also Dates and NaiveDateTimes.
+  `false` otherwise.
+
+  If two calendars are not compatible, we can only convert datetimes and times
+  between them. If they are compatible, this means that we can also convert
+  dates as well as naive datetimes between them.
+
   """
   @spec compatible_calendars?(Calendar.calendar, Calendar.calendar) :: boolean
   def compatible_calendars?(calendar, calendar), do: true


  @doc """
  Converts the Time struct to a different calendar.
  """
  @spec convert(Time.t, Calendar.calendar) :: Time.t
  def convert(%Time{calendar: calendar} = time, calendar) do
    {:ok, time}
  end

    {:ok, result_datetime}
  end

  @doc """
  Converts a DateTime from one calendar to another.

  If this conversion fails for some reason, an ArgumentError is raised.

  ## Examples

      iex> dt1 = %DateTime{year: 2000, month: 2, day: 29, zone_abbr: "AMT",
      ...>                 hour: 23, minute: 0, second: 7, microsecond: {0, 0},
      ...>                 utc_offset: -14400, std_offset: 0, time_zone: "America/Manaus"}
      iex> DateTime.convert!(dt1, Calendar.ISO)
      %DateTime{year: 2000, month: 2, day: 29, zone_abbr: "AMT",
                hour: 23, minute: 0, second: 7, microsecond: {0, 0},
                utc_offset: -14400, std_offset: 0, time_zone: "America/Manaus"}

  """
  @spec convert!(DateTime.t, Calendar.calendar) :: DateTime.t
  def convert!(datetime, calendar) do
    case convert(datetime, calendar) do
