Дата выпуска Xcode 11, 11.1 на Мохаве - противоречие отладчика

У меня проблема при работе с датами в Xcode11 и даже в Xcode11.1. Отладчик (как-то) противоречит сам себе.

Видите ли, когда я распечатываю детали для selectedRanges (который представляет собой список DateRanges с двумя свойствами:)

    struct DateRange: Equatable {
        var start: Date
        var end: Date?
    }

он показывает мне правильные сохраненные значения, но когда я делаю что-то вроде этого:

 let a = selectedRanges.filter({
        guard $0.isComplete() == true else { return false }
        guard !date.isBetween($0.start, and: $0.end!) else { return false }
        guard let firstSelectedRange = selectedRanges.first, firstSelectedRange.isComplete() == false else { return false }
       *guard firstSelectedRange.start > $0.start && date < $0.start else { return false }

        return true
    })

и распечатать firstSelecteRange.end Я получаю необязательное значение, если не было, и при тестировании с != nil он возвращает значение и при тестировании с .isComplete() возвращает еще один (метод isComplete на изображении).

Все отпечатки были сделаны в строке * кода.

Как ни странно, в консоли отладчика я иногда получаю ноль на диапазонах, которые не являются.

У меня вопрос: это проблема Xcode или я что-то пропускаю?

// РЕДАКТИРОВАТЬ 1: добавлены журналы для команды p:

0 ответов

Другие вопросы по тегам