Rust Search

Find the best content on Rust, curated by the community; a search engine for Rustaceans.
github.com
## Summary Remove the reference-counting based `Gc<T>` type from the standard library and its associated support infrastructure from `rustc`. Doing so lays a cleaner foundation upon which to prototype a proper tracing GC, and will avoid peo...
RFC 256 RFC 2014-09-19 ~6 min read
github.com
## Summary The high-level idea is to add language features that simultaneously achieve three goals: 1. move `Send` and `Share` out of the language entirely and into the standard library, providing mechanisms for end users to easily implemen...
RFC 19 RFC 2014-09-18 ~19 min read
github.com
## Summary This RFC proposes to remove the *runtime system* that is currently part of the standard library, which currently allows the standard library to support both native and green threading. In particular: * The `libgreen` crate and as...
RFC 230 RFC 2014-09-16 ~11 min read
github.com
## Summary Make enum variants part of both the type and value namespaces. ## Motivation We might, post-1.0, want to allow using enum variants as types. This would be backwards incompatible, because if a module already has a value with the s...
RFC 234 RFC 2014-09-16 ~1 min read
github.com
## Summary Add the following coercions: * From `&T` to `&U` when `T: Deref<U>`. * From `&mut T` to `&U` when `T: Deref<U>`. * From `&mut T` to `&mut U` when `T: DerefMut<U>` These coercions eliminate the need for "cross-borrowing" (things l...
RFC 241 RFC 2014-09-16 ~7 min read
github.com
## Summary Add syntactic sugar for working with the `Result` type which models common exception handling constructs. The new constructs are: * An `?` operator for explicitly propagating "exceptions". * A `catch { ... }` expression for conve...
RFC 243 RFC 2014-09-16 ~20 min read
github.com
## Summary This RFC is preparation for API stabilization for the `std::num` module. The proposal is to finish the simplification efforts started in [@bjz's reversal of the numerics hierarchy](https://github.com/rust-lang/rust/issues/10387)....
RFC 369 RFC 2014-09-16 ~10 min read
github.com
## Summary This RFC adds *overloaded slice notation*: - `foo[]` for `foo.as_slice()` - `foo[n..m]` for `foo.slice(n, m)` - `foo[n..]` for `foo.slice_from(n)` - `foo[..m]` for `foo.slice_to(m)` - `mut` variants of all the above via two new t...
RFC 198 RFC 2014-09-11 ~6 min read
github.com
## Summary The `||` unboxed closure form should be split into two forms—`||` for nonescaping closures and `move ||` for escaping closures—and the capture clauses and self type specifiers should be removed. ## Motivation Having to specify `r...
RFC 231 RFC 2014-09-09 ~2 min read
github.com
## Summary Restore the integer inference fallback that was removed. Integer literals whose type is unconstrained will default to `i32`, unlike the previous fallback to `int`. Floating point literals will default to `f64`. ## Motivation ###...
RFC 212 RFC 2014-09-03 ~6 min read
github.com
## Summary This is a *conventions RFC* for settling naming conventions when there are by value, by reference, and by mutable reference variants of an operation. ## Motivation Currently the libraries are not terribly consistent about how to...
RFC 199 RFC 2014-08-28 ~3 min read
github.com
## Summary Add additional iterator-like Entry objects to collections. Entries provide a composable mechanism for in-place observation and mutation of a single element in the collection, without having to "re-find" the element multiple times...
RFC 216 RFC 2014-08-28 ~7 min read
github.com
## Summary When a struct type `S` has no fields (a so-called "empty struct"), allow it to be defined via either `struct S;` or `struct S {}`. When defined via `struct S;`, allow instances of it to be constructed and pattern-matched via eith...
RFC 218 RFC 2014-08-28 ~12 min read
github.com
## Summary Introduce a new `while let PAT = EXPR { BODY }` construct. This allows for using a refutable pattern match (with optional variable binding) as the condition of a loop. ## Motivation Just as `if let` was inspired by Swift, it turn...
RFC 214 RFC 2014-08-27 ~2 min read
github.com
## Summary Introduce a new `if let PAT = EXPR { BODY }` construct. This allows for refutable pattern matching without the syntactic and semantic overhead of a full `match`, and without the corresponding extra rightward drift. Informally thi...
RFC 160 RFC 2014-08-26 ~5 min read
github.com
## Summary Change syntax of subslices matching from `..xs` to `xs..` to be more consistent with the rest of the language and allow future backwards compatible improvements. Small example: ```rust match slice { [xs.., _] => xs, [] => fail!()...
RFC 202 RFC 2014-08-15 ~1 min read
github.com
## Summary The `#[cfg(...)]` attribute provides a mechanism for conditional compilation of items in a Rust crate. This RFC proposes to change the syntax of `#[cfg]` to make more sense as well as enable expansion of the conditional compilati...
RFC 194 RFC 2014-08-09 ~3 min read
github.com
## Summary Divide global declarations into two categories: - **constants** declare *constant values*. These represent a value, not a memory address. This is the most common thing one would reach for and would replace `static` as we know it...
RFC 246 RFC 2014-08-08 ~8 min read
github.com
## Summary - Remove the special-case bound `'static` and replace with a generalized *lifetime bound* that can be used on objects and type parameters. - Remove the rules that aim to prevent references from being stored into objects and repla...
RFC 192 RFC 2014-08-06 ~14 min read
github.com
## Summary This RFC extends traits with *associated items*, which make generic programming more convenient, scalable, and powerful. In particular, traits will consist of a set of methods, together with: * Associated functions (already prese...
RFC 195 RFC 2014-08-04 ~36 min read
"We're here to learn. We will do so relentlessly."

Search tips

Type anything to search across articles, videos (including conference talks), podcasts, research, crates, and Rust API documentation. These operators give you finer control — click an example to try it.

Find pages containing all your words. Pages where the words appear together rank higher.
Quote part of your query to keep those words together as an exact phrase within a larger search.
Wrap the whole query in quotes for a verbatim search that matches text exactly, punctuation and all — perfect for Rust syntax. Needs at least 3 characters.
Put ! first to open the top result immediately. Quote the whole query for a literal leading bang, as in '!Send'. Bangs elsewhere, such as println!, stay literal. Browser and launcher shortcuts can invoke this directly. See search integrations.
Limit results to a single site. Works on its own () too. One site: per search.

Use the tabs and filters above the results to narrow by content type, publication year, and sort order.