07 сентября 2025

Новые операторы "is not" и "not in" в Delphi 13 Florence

Компилятор Delphi 13 Florence обзавелся двумя новыми операторам: "is not" и "not in". Они предлагают более короткую и удобочитаемую версию существующих комбинированных операторов.
Например:
if not (Obj is TFoo) then ... // классический синтаксис
if Obj is not TFoo then ...   // новый синтаксис

if not (x in [Apple, Orange] then ... // классический синтаксис
if x not in [Apple, Orange] then ...  // новый синтаксис

6 комментариев:

  1. Бывает синтаксический сахар, а это уже скорее синтаксическая корица. На кончике ножа совсем чуточку в чашку добавить, для цельности вкуса. :)

    ОтветитьУдалить
  2. Божечки-кошечки! Наконец-то добавили директивы {$PUSHOPT} и {$POPOPT}, сохраняющие/восстанавливающие текущие опции компилятора! Меньше потребности в костылях будет, ура.

    ОтветитьУдалить
  3. Вообще, похоже, что прямо таки крупных нововведений во Florence не очень много. Остаётся тешить себя надеждой, что зато там больше исправленных багов. :)

    ОтветитьУдалить
    Ответы
    1. Нововведения не тянут на Delphi 13. Правильно было бы написать, что это Delphi 12.4.

      Удалить
  4. Дело конечно привычки, но на мой взгляд новый синтаксис менее понятный чем страый. Я уж надеюсь оба варианта написания будет поддерживаться.. Фигнёю страдают помойму. Лучше бы завезли мультикаретку полноценную.

    ОтветитьУдалить
    Ответы
    1. а то я попросту зачастую копирую кусок кода, редактирую его с помощью мултикаретки в Sublime Text и возвращаю код в Delphi. как-то стыдно им уже должно быть.

      Удалить