Typed throws

Swift provides support for throwing, catching, propagating, and manipulating recoverable errors. To indicate that a function or method can throw an error, we add the throws keyword to the declaration. In this very detailed Swift evolution pitch, Jorge proposes adding the ability to specify the type of an error that a function will throw.