23 Commits

Author SHA1 Message Date
Rodin 132f57f7a8 Update related repos links to GitHub mirrors 2026-05-10 20:22:50 -07:00
rodin 7e71edb1db docs: move source info to sources/README, remove from main README 2026-05-08 01:13:09 +00:00
rodin 87424b3f60 docs: document rust stdlib as the source 2026-05-08 01:12:58 +00:00
rodin 6338ab7668 docs: add sources/ to structure for consistency with elixir/go repos 2026-05-08 01:12:33 +00:00
rodin fd8c799677 chore: add sources/ directory for consistency with elixir/go repos 2026-05-08 01:12:21 +00:00
rodin 470c6b3fe3 docs: remove pattern file index — file names are self-descriptive 2026-05-08 01:10:55 +00:00
rodin 5cc77138b2 docs: align README with elixir/go pattern repos
Consistent structure: prescriptive header, structure, agent
instructions (solving/reviewing/evaluating), taxonomy definition.
Removed discovery data table and line counts — the patterns
speak for themselves.
2026-05-08 01:10:03 +00:00
rodin d78abb3183 docs: add patterns vs conventions definition 2026-05-08 01:05:06 +00:00
rodin-bot a79249bbff fix: correct drifted citations at commit f53b654
- traits.md: iterator.rs anchor L76→L42 (pub const trait Iterator)
- traits.md: deref.rs anchor L60→L139 (pub const trait Deref)
- error-handling.md: fix variant names CliError::Io→IoError, Parse→ParseError
  to match actual stdlib doc example at convert/mod.rs:557
- concurrency.md: mutex.rs and rwlock.rs moved to sync/poison/ subtree
  (3 link updates: mutex×2, rwlock×1)
2026-05-06 17:22:48 -07:00
Rodin 70d97023cf docs: update README with smell files 2026-04-30 16:03:58 -07:00
Rodin f270fc68c1 docs: add smell files (anti-patterns + common mistakes)
anti-patterns.md: 10 entries, 490 lines — what the stdlib avoids
common-mistakes.md: 10 entries, 508 lines — language transition smells

Covers: unwrap in library code, String errors, unsafe without SAFETY,
clone as borrow-checker escape, Deref as inheritance, panic for
recoverable errors, god structs, Box<dyn Any>, static mut, stringly-typed APIs,
Arc<Mutex> everywhere, collect then iterate, index loops, try/catch
mentality, null sentinels, OOP hierarchies, global state, impl vs dyn.
2026-04-30 16:01:52 -07:00
Rodin 791c7b0fed docs: comprehensive README with stats and usage guide
100 patterns across 10 files, 6,441 lines total.
Includes discovery data table, pattern file index, and usage guide.
2026-04-30 15:13:38 -07:00
Rodin d3c5780e13 docs: macro patterns from rust-lang/rust
10 patterns, 519 lines. Full spec compliance.
Patterns: macro_rules!, trailing comma, $crate hygiene, multiple
arms, #[derive], attribute macros, type-level repetition, built-in
macros, format macros, macro visibility/export.
2026-04-30 15:13:10 -07:00
Rodin e1c2caf8d5 docs: module organization patterns from rust-lang/rust
10 patterns, 514 lines. Full spec compliance.
Patterns: one type per file, pub use re-exports, prelude module,
feature gates, API/impl separation, test organization, type aliases,
workspace multi-crate, conditional compilation, error modules.
2026-04-30 15:11:43 -07:00
Rodin 7016c427e8 docs: API design patterns from rust-lang/rust
10 patterns, 596 lines. Full spec compliance.
Patterns: naming conventions, #[non_exhaustive], pub(crate),
constructors, method chaining, trait bounds, typestate, extension
traits, newtype, per-module errors.
2026-04-30 15:10:23 -07:00
Rodin 9cd0a33ff9 docs: unsafe patterns from rust-lang/rust
10 patterns, 624 lines. Full spec compliance.
Patterns: // SAFETY: comments, unsafe fn contracts, safe wrappers,
MaybeUninit, transmute, raw pointers, unsafe impl Send/Sync,
NonNull/PhantomData, extern "C" FFI, type-encoded invariants.
2026-04-30 15:08:25 -07:00
Rodin c32dd9b843 docs: testing patterns from rust-lang/rust
10 patterns, 664 lines. Full spec compliance.
Patterns: #[cfg(test)] modules, assert_eq!, #[should_panic],
integration tests, #[track_caller], test helpers, doc tests,
error testing, conditional compilation, property-based testing.
2026-04-30 15:06:15 -07:00
Rodin f397dba013 docs: concurrency patterns from rust-lang/rust
10 patterns, 723 lines. Full spec compliance.
Patterns: Send/Sync, Arc<Mutex<T>>, RwLock, atomics, channels,
OnceLock/LazyLock, scoped threads, Cell/RefCell, thread_local!,
poisoning.
2026-04-30 15:04:32 -07:00
Rodin 82b1366a94 docs: documentation patterns from rust-lang/rust
10 patterns, 723 lines. Full spec compliance.
Patterns: doc comments, # Examples, # Safety, # Panics, # Errors,
intra-doc links, doc test attributes, module docs, // SAFETY:,
#[doc(hidden)].
2026-04-30 15:02:28 -07:00
Rodin 6661a9f249 docs: ownership and lifetime patterns from rust-lang/rust
10 patterns, 677 lines. Full spec compliance.
Patterns: borrowing over owning, Clone/Copy, Cow, mem::take, Box,
Arc, Drop/RAII, lifetime elision, AsRef, PhantomData.
2026-04-30 14:57:23 -07:00
Rodin b168acc900 docs: trait design patterns from rust-lang/rust
10 patterns, 699 lines. Full spec compliance.
Patterns: small traits, derive macros, From/Into, Default, Display,
Iterator, Deref, sealed traits, #[must_use], blanket implementations.
2026-04-30 14:55:01 -07:00
Rodin e58614de2e docs: error handling patterns from rust-lang/rust
10 patterns, 702 lines. Full new-spec compliance:
- Source hyperlinks (commit SHA permalinks)
- Before/after code transformation pairs
- Over-application examples with alternatives
- Anti-patterns with DON'T/DO blocks
- Decision tree at end
- Cross-references

Patterns: Result, ? operator, error enums, From impls, Error trait,
type aliases, panic!, map_err, #[must_use], unwrap/expect.
2026-04-30 14:53:12 -07:00
rodin 4de77cf306 Initial commit 2026-04-30 21:48:46 +00:00