Как работает case в if-case

Старый программист на Си мог бы помочь с Swift.

Я не понимаю что-то о синтаксисе if-case. Например.:

if case 20...30 = age {
   print ("in range.")
}

case 20...30 = age представляется условным испытанием дляif заявление. Поэтому я был изначально смущен, когда увидел оператор присваивания ('=') вместо оператора сравнения ('==').

Хорошо, подумал я, это, вероятно, означает, чтоcase оператор на самом деле является вызовом функции, которая возвращает логическое значение. Возвращаемое значение будет затем удовлетворять критерию сравнения вif заявление.

В качестве эксперимента я попыталсяcase утверждение, как обычный условный тест и заключенные в скобки. Свифт с радостью приметif (x == 5) или жеif (true), Ноif (case 20...30 = age) генерирует ошибку. Итакcase утверждение не похоже на функцию.

Мне просто любопытно понять, что здесь происходит. Любое понимание будет с благодарностью.

Ответы на вопрос(4)

Ваш ответ на вопрос