A
src/ceh4.h
- там чёрт ногу свернётЯ решил взять резалты, чтобы не работать с исключениями и чётко обрабатывать все варианты ошибок и т.п.. Получилось ужасно. Вернее....сервис то получился стабильным, но код ужасно читался. Вывод типов был никаким.
К примеру, есть в шарпе Exception и от него производный InvalidOperationException.
Когда выполняешь функцию, которая возвращает Result<T, InvalidOperationException>, то результат автоматом не преобразовать в Result<T, Exception>. Нужно руками вызывать MapError и там даункастить. Короче, портянки с такими преобразованиями занимали кучу места. Вторая проблема - IDisposable. Если в AndThen создал "неуправляемый" объект, то лучше там его и освобождать. Поэтому выходили AndThen в AndThen'ах....ух...