Rust Search

Find the best content on Rust, curated by the community; a search engine for Rustaceans.
github.com
## 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...
RFC 114 RFC 2014-07-29 ~14 min read
github.com
## 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...
RFC 130 RFC 2014-07-29 ~3 min read
github.com
## 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...
RFC 184 RFC 2014-07-24 ~1 min read
github.com
## 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...
RFC 201 RFC 2014-07-17 ~8 min read
github.com
## 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....
RFC 169 RFC 2014-07-16 ~5 min read
github.com
## 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...
RFC 390 RFC 2014-07-16 ~7 min read
github.com
## 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...
RFC 164 RFC 2014-07-14 ~1 min read
github.com
## 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...
RFC 155 RFC 2014-07-04 ~4 min read
github.com
## 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...
RFC 151 RFC 2014-07-02 ~1 min read
github.com
## 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*...
RFC 560 RFC 2014-06-30 ~18 min read
github.com
## 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...
RFC 139 RFC 2014-06-25 ~1 min read
github.com
## Summary * Remove the `crate_id` attribute and knowledge of versions from rustc. * Add a `#[crate_name]` attribute similar to the old `#[crate_id]` attribute * Filenames will no longer have versions, nor will symbols * A new flag, `--exte...
RFC 109 RFC 2014-06-24 ~7 min read
github.com
## Summary Require a feature gate to expose private items in public APIs, until we grow the appropriate language features to be able to remove the feature gate and forbid it entirely. ## Motivation Privacy is central to guaranteeing the inv...
RFC 136 RFC 2014-06-24 ~7 min read
github.com
## Summary This RFC proposes to 1. Expand the rules for eliding lifetimes in `fn` definitions, and 2. Follow the same rules in `impl` headers. By doing so, we can avoid writing lifetime annotations ~87% of the time that they are currently r...
RFC 141 RFC 2014-06-24 ~9 min read
github.com
## Summary *Note:* This RFC discusses the behavior of `rustc`, and not any changes to the language. Change how target specification is done to be more flexible for unexpected usecases. Additionally, add support for the "unknown" OS in targe...
RFC 131 RFC 2014-06-18 ~3 min read
github.com
## Summary Rename the `Share` trait to `Sync` ## Motivation With interior mutability, the name "immutable pointer" for a value of type `&T` is not quite accurate. Instead, the term "shared reference" is becoming popular to reference values...
RFC 123 RFC 2014-06-15 ~1 min read
github.com
## Summary Remove or feature gate the shadowing of view items on the same scope level, in order to have less complicated semantic and be more future proof for module system changes or experiments. This means the names brought in scope by `e...
RFC 116 RFC 2014-06-12 ~6 min read
github.com
## Summary Rename `*T` to `*const T`, retain all other semantics of unsafe pointers. ## Motivation Currently the `T*` type in C is equivalent to `*mut T` in Rust, and the `const T*` type in C is equivalent to the `*T` type in Rust. Noticeab...
RFC 68 RFC 2014-06-11 ~5 min read
github.com
## Summary Currently we use inference to find the current type of otherwise-unannotated integer literals, and when that fails the type defaults to `int`. This is often felt to be potentially error-prone behavior. This proposal removes the i...
RFC 115 RFC 2014-06-11 ~1 min read
github.com
## Summary Cleanup the trait, method, and operator semantics so that they are well-defined and cover more use cases. A high-level summary of the changes is as follows: 1. Generalize explicit self types beyond `&self` and `&mut self` etc, so...
RFC 48 RFC 2014-06-10 ~23 min read
"I often think about Rust as a process and community for developing a programming language, rather than as a programming language itself."

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.