Abusing await with a result type to achieve rust-like error propagation in C#
arkleseizure.net