You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Tom Kaitchuck 5310b14b62 Add example for #91 4 years ago
anti_patterns Merge pull request #85 from tmandry/patch-1 4 years ago
idioms Add example for #91 4 years ago
patterns Merge pull request #75 from llogiq/unsafe-mods 5 years ago
LICENSE Initial commit 9 years ago
README.md Add example for #91 4 years ago
intro.md Initial commit 9 years ago
template.md Added a few idioms and patterns - some are still WIP 9 years ago

README.md

Rust Design Patterns

An open source repository of design patterns and idioms in the Rust programming language.

Contents

Introduction

Idioms

Design patterns

Anti-patterns

  • TODO thread + catch_panic for exceptions
  • TODO Clone to satisfy the borrow checker
  • Deref polymorphism
  • TODO Matching all fields of a struct (back compat)
  • TODO wildcard matches
  • TODO taking an enum rather than having multiple functions
  • TODO unwrap()ing every Result instead of forwarding it
  • #[deny(warnings)]

Contributing

Contributions are very welcome!

You should start with the template. Copy it into the appropriate directory, edit it, and submit a PR. You might not want every section, and you might want to add extra sections.

We suggest leaving a comment on the issue tracker so that other people don't start working on the same topic.

Correction and elaboration PRs are very welcome.