Re[18]: Result objects - все-таки победили Exceptions?
От: T4r4sB Россия  
Дата: 14.01.25 09:28
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>А без явного указания типа результата никак?


Можно описать тип результата основываясь на типах аргументов.
А сказать "сам выведи по содержимому функции" — нельзя. И это очень хорошо потому что я знаю каково это когда поменял одну строчку в одной функции и из-за этого поползли изменения сигнатуры по всей кодовой базы, и иногда там где вообще не хочется, и не всегда понятно почему.
Один из принципов Раста — весь умный анализ сидит внутри функции. При этом вся инфа для межфункционального анализа зашита в явно прописанной сигнатуре функции.

S> И есть ли возможность вернуть Result<i32, BarError|BazError>?


Можно только если ты сам опишешь нужный таггед юнион и вручную пропишешь мапперы в него. С телефона не напишу

Кстати а A|B|C , (A|B)|C и A|(B|C) это одно и то же или разная фигня?
Нет такой подлости и мерзости, на которую бы не пошёл gcc ради бессмысленных 5% скорости в никому не нужном синтетическом тесте
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.