Rust Search

Find the best content on Rust, curated by the community; a search engine for Rustaceans.
## 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...
github.com RFC 216 RFC 2014-08-28 ~7 min read
## 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...
github.com RFC 218 RFC 2014-08-28 ~12 min read
## 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...
github.com RFC 214 RFC 2014-08-27 ~2 min read
## 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...
github.com RFC 160 RFC 2014-08-26 ~5 min read
## 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!()...
github.com RFC 202 RFC 2014-08-15 ~1 min read
## 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...
github.com RFC 194 RFC 2014-08-09 ~3 min read
## 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...
github.com RFC 246 RFC 2014-08-08 ~8 min read
## 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...
github.com RFC 192 RFC 2014-08-06 ~14 min read
## 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...
github.com RFC 195 RFC 2014-08-04 ~36 min read
## Summary - Convert function call `a(b, ..., z)` into an overloadable operator via the traits `Fn<A,R>`, `FnShare<A,R>`, and `FnOnce<A,R>`, where `A` is a tuple `(B, ..., Z)` of the types `B...Z` of the arguments `b...z`, and `R` is the re...
github.com RFC 114 RFC 2014-07-29 ~14 min read
## Summary Remove special treatment of `Box<T>` from the borrow checker. ## Motivation Currently the `Box<T>` type is special-cased and converted to the old `~T` internally. This is mostly invisible to the user, but it shows up in some plac...
github.com RFC 130 RFC 2014-07-29 ~3 min read
## Summary Add simple syntax for accessing values within tuples and tuple structs behind a feature gate. ## Motivation Right now accessing fields of tuples and tuple structs is incredibly painful—one must rely on pattern-matching alone to e...
github.com RFC 184 RFC 2014-07-24 ~1 min read
## Summary This RFC improves interoperation between APIs with different error types. It proposes to: * Increase the flexibility of the `try!` macro for clients of multiple libraries with disparate error types. * Standardize on basic functio...
github.com RFC 201 RFC 2014-07-17 ~8 min read
## Summary Change the rebinding syntax from `use ID = PATH` to `use PATH as ID`, so that paths all line up on the left side, and imported identifiers are all on the right side. Also modify `extern crate` syntax analogously, for consistency....
github.com RFC 169 RFC 2014-07-16 ~5 min read
## Summary The variants of an enum are currently defined in the same namespace as the enum itself. This RFC proposes to define variants under the enum's namespace. ### Note In the rest of this RFC, *flat enums* will be used to refer to the...
github.com RFC 390 RFC 2014-07-16 ~7 min read
## Summary Rust's support for pattern matching on slices has grown steadily and incrementally without a lot of oversight. We have concern that Rust is doing too much here, and that the complexity is not worth it. This RFC proposes to featur...
github.com RFC 164 RFC 2014-07-14 ~1 min read
## Summary Require "anonymous traits", i.e. `impl MyStruct` to occur only in the same module that `MyStruct` is defined. ## Motivation Before I can explain the motivation for this, I should provide some background as to how anonymous traits...
github.com RFC 155 RFC 2014-07-04 ~4 min read
## Summary Closures should capture their upvars by value unless the `ref` keyword is used. ## Motivation For unboxed closures, we will need to syntactically distinguish between captures by value and captures by reference. ## Detailed design...
github.com RFC 151 RFC 2014-07-02 ~1 min read
## Summary Change the semantics of the built-in fixed-size integer types from being defined as wrapping around on overflow to it being considered a program error (but *not* undefined behavior in the C sense). Implementations are *permitted*...
github.com RFC 560 RFC 2014-06-30 ~18 min read
## Summary Remove the coercion from `Box<T>` to `&T` from the language. ## Motivation The coercion between `Box<T>` to `&T` is not replicable by user-defined smart pointers and has been found to be rarely used [1]. We already removed the co...
github.com RFC 139 RFC 2014-06-25 ~1 min read
"I made a thing to test building every possible Rust program...eventually."

Search tips

Type anything to search across articles, videos (including conference talks), podcasts, and research. 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.
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.