On Friday, 12 August 2022 at 21:41:25 UTC, Christian Köstlin
wrote:
which would enable something like
```d
return s
.readText
.parseJSON
.contextWithException((UTFException e) {
return new Exception("Cannot process UTF-8 in
config file%s\n %s".format(s, e.msg), e);
})
.contextWithException((FileException e) {
return new Exception("Cannot process config
file%s\n %s".format(s, e.msg), e);
});
```
This is not as DRY as it could be. Furthermore I would try
implement the error handling completely outside the main
execution path, ideally in a wrapper around a the old main
function (renamed to main_). This approach becomes problematic if
exceptions of the same class can be thrown from two functions of
the chain.
Your code is printing e.msg. How to you localize that string?