теоретически можно было бы посмотреть все инстансы Exception в программе, но я не слышал про такой инструмент
А если такая логика: код функции преобразуется в аст и дальше в нем смотрятся вызовы других функций/вызов функции throwIO/throw/catch и на основании этого определяется какие исключения могут вылететь.
А если такая логика: код функции преобразуется в аст и дальше в нем смотрятся вызовы других функций/вызов функции throwIO/throw/catch и на основании этого определяется какие исключения могут вылететь.
А если такая логика: код функции преобразуется в аст и дальше в нем смотрятся вызовы других функций/вызов функции throwIO/throw/catch и на основании этого определяется какие исключения могут вылететь.
из-за лени исключение может вылететь далеко от того места, где оно брошено