# A succinct name for the pattern ## Description A short, prose description of the pattern. ## Example ```rust // An example of the pattern in action, should be mostly code, commented // liberally. ``` When writing examples, please try to make them compile. This allows us to test them. If you fail to write an example that is both complete and readable, please at least mark your example code with `ignore` as in here: ```rust,ignore // A non-runnable example of the pattern in action, should be mostly code, commented // liberally. ``` ## Motivation Why and where you should use the pattern ## Advantages Good things about this pattern. ## Disadvantages Bad things about this pattern. Possible contraindications. ## Discussion A deeper discussion about this pattern. You might want to cover how this is done in other languages, alternative approaches, why this is particularly nice in Rust, etc. ## See also Related patterns (link to the pattern file). Versions of this pattern in other languages.