# Summary - [failure](./intro.md) - [How to use failure](./howto.md) - [The Fail trait](./fail.md) - [Deriving Fail](./derive-fail.md) - [The Error type](./error.md) - [`bail!` and `ensure!`](./bail-and-ensure.md) - [Patterns & Guidance](./guidance.md) - [Strings as errors](./error-msg.md) - [A Custom Fail type](./custom-fail.md) - [Using the Error type](./use-error.md) - [An Error and ErrorKind pair](./error-errorkind.md) - [Strings and custom fail type](./string-custom-error.md)