Перейти к основному содержимому

Новое в версии 6.0

Прикладная функциональность

API для работы с XML

Добавлен API для работы с объектами формата XML во встроенном языке:

Сериализация JSON

В механизм сериализации формата JSON добавлена поддержка новых типов:

  • Диапазон<ТипГраницы>, ЗакрытыйДиапазон<ТипГраницы>

    Запись объекта с двумя свойствами: «from» и «to»
    СериализацияJson.ЗаписатьОбъект(новый Диапазон(1, 2))
    // "{"from":1,"to":2}"
  • Тип

    Запись сигнатуры типа строкой
    пер МойТип = Тип<Массив<Число>>
    СериализацияJson.ЗаписатьОбъект(МойТип)
    // "Std::Collections::Array<Std::Number>"

Встроенный язык

Тип «КодировкаBase64»

В метод ДекодироватьВСтроку() типа КодировкаBase64 добавлен параметр Кодировка, который задает кодировку декодируемой строки:

ДекодироватьВСтроку(
СтрокаBase64: Строка,
Кодировка: Кодировка | Строка = Кодировка.Utf8
): Строка

Тип «никогда»

Добавлен новый тип никогда / never, обозначающий тип выражения, которое никогда не будет выполнено. Оно может завершиться исключением или не завершиться вообще (подробнее).

Данный тип является типом выражения выбросить.

метод ВыброситьИсключение(Описание: Строка): никогда
выбросить новый ИсключениеВыполнения(Описание)
;

Тип «Совпадение»

Для типа Совпадение добавлена возможность получать индекс начала подстроки, захваченной некоторой группой, и ее длины. Добавлены следующие методы и перегрузки:

Если группой, указанной в параметре, не захвачена ни одна подстрока, то:

  • методы Индекс() возвращают -1;
  • методы Длина() возвращают 0.

Тип «Соответствие»

В тип Соответствие добавлены ленивые перегрузки для методов Вставить() и ВставитьЕслиОтсутствует().

Тип «Строка»

Для типа Строка добавлен новый метод Обрезать():

Обрезать(
МаксимальнаяДлина: Число,
Постфикс = ""
): Строка

Метод сокращает строку до числа символов, равного МаксимальнаяДлина - Постфикс.Длина(), и добавляет в конец постфикс. Например:

пер МояСтрока = "Это пример строки"
пер Результат = МояСтрока.Обрезать(13, "...")
// Результат: Это пример...

Тип «Тип»

Для типа Тип добавлено свойство ПараметрыТипа типа ЧитаемыйМассив<ЧитаемоеМножество<Тип>>, которое позволяет использовать механизм отражения для доступа к параметрам обобщенных типов.

Тип «Ууид»

К базовым типам для Ууид добавлен тип Сравнимое. Теперь доступно сравнение Ууид с помощью операций <, >, >=, <= или с помощью метода Сравнить().

Типы «Последовательность» и «Обходимое»

  • Удалена перегрузка метода ВСоответствие() с одним параметром:

    ВСоответствие<ТипКлюча>(ИзвлекательКлюча: (ТипЭлемента)->ТипКлюча): Соответствие<ТипКлюча, ТипЭлемента>

    Вместо нее реализованы новые методы:

  • Добавлен новый метод ФильтроватьПоТипу() (для Обходимое ― см. здесь, для Последовательность ― см. здесь), который фильтрует элементы коллекции по типу и возвращает новую коллекцию из этих элементов. Ранее для этого приходилось использовать цепочку вызовов методов Фильтровать() и Преобразовать() с приведением типов.

Цикл «для по»

Для цикла для по добавлена возможность делать обход от большего к меньшему и указывать шаг (подробнее).

Изменения в объектной модели

Переименования

Изображения

  • ОбрабатываемоеИзображение.ВырезатьКруг()ОбрабатываемоеИзображение.ВырезатьПоКругу()

Стандартная библиотека

  • ИсключениеНеПоддерживаетсяИсключениеНеподдерживаемаяОперация
  • Pow()Степень()

Электронная почта

  • СоединениеPop3.ОтметитьНаУдаление()СоединениеPop3.ПометитьНаУдаление()

Удаления

Стандартная библиотека

Тип ТипПеречисление удален. Вместо него можно использовать Тип. Методы ПоИмени() и Элементы() типа ТипПеречисление перенесены в Тип с условием, что ТипЗначения — это Перечисление.