Логическое значение научилось превращаться в результат с ошибкой
25.05.2026У логического типа появились два метода, переводящие условие в результат: истина даёт успех, ложь — заданную ошибку.
Какую проблему это снимает
Функции, возвращающие результат с ошибкой, часто проверяют условие и формируют ошибку прямо на месте. Если условие простое, получается однострочник; если условие сложное или используется в нескольких функциях — повторяющийся шаблон.
Обратный вариант тоже встречается: чужое условие проверяется вручную, и код возвращает ошибку, соответствующую уже вычисленному флагу.
Зачем два метвода
Первый берёт ошибку готовой. Второй берёт замыкание, которое её создаёт — и вызывается оно только при ложном условии.
Второй нужен, когда создание ошибки дорого: ошибка с текстом, содержащим результат вычислений, или с выделенным ресурсом. Если ошибка создаётся заранее, она будет построена даже тогда, когда условие истинно и она не понадобится.
Оригинал
stabilize bool_to_result
Упоминаний: 1 · Просмотров: 3