Rust Search

Find the best content on Rust, curated by the community; a search engine for Rustaceans.
github.com
## Summary Introduce the method `split_at(&self, mid: usize) -> (&str, &str)` on `str`, to divide a slice into two, just like we can with `[T]`. ## Motivation Adding `split_at` is a measure to provide a method from `[T]` in a version that m...
RFC 1123 RFC 2015-05-17 ~2 min read
github.com
## Summary Add an `expect` method to the Result type, bounded to `E: Debug` ## Motivation While `Result::unwrap` exists, it does not allow annotating the panic message with the operation attempted (e.g. what file was being opened). This is...
RFC 1119 RFC 2015-05-13 ~1 min read
github.com
## Summary This RFC has the goal of defining what sorts of breaking changes we will permit for the Rust language itself, and giving guidelines for how to go about making such changes. ## Motivation With the release of 1.0, we need to establ...
RFC 1122 RFC 2015-05-07 ~12 min read
github.com
## Summary This RFC proposes a comprehensive set of guidelines for which changes to *stable* APIs are considered breaking from a semver perspective, and which are not. These guidelines are intended for both the standard library and for the...
RFC 1105 RFC 2015-05-04 ~24 min read
github.com
## Summary Rename `.connect()` to `.join()` in `SliceConcatExt`. ## Motivation Rust has a string concatenation method named `.connect()` in `SliceConcatExt`. However, this does not align with the precedents in other languages. Most language...
RFC 1102 RFC 2015-05-02 ~1 min read
github.com
## Summary Remove the `static_assert` feature. ## Motivation To recap, `static_assert` looks like this: ```rust #![feature(static_assert)] #[static_assert] static assertion: bool = true; ``` If `assertion` is `false` instead, this fails to...
RFC 1096 RFC 2015-04-28 ~1 min read
github.com
## Summary Alter the signature of the `std::mem::forget` function to remove `unsafe`. Explicitly state that it is not considered unsafe behavior to not run destructors. ## Motivation It was [recently discovered][scoped-bug] by @arielb1 that...
RFC 1066 RFC 2015-04-15 ~4 min read
github.com
## Summary Add the `Sync` bound to `io::Error` by requiring that any wrapped custom errors also conform to `Sync` in addition to `error::Error + Send`. ## Motivation Adding the `Sync` bound to `io::Error` has 3 primary benefits: * Values th...
RFC 1057 RFC 2015-04-11 ~2 min read
github.com
## Summary Replace `slice.tail()`, `slice.init()` with new methods `slice.split_first()`, `slice.split_last()`. ## Motivation The `slice.tail()` and `slice.init()` methods are relics from an older version of the slice APIs that included a `...
RFC 1058 RFC 2015-04-11 ~2 min read
github.com
## Summary Rename or replace `str::words` to side-step the ambiguity of “a word”. ## Motivation The [`str::words`](http://doc.rust-lang.org/std/primitive.str.html#method.words) method is currently marked `#[unstable(reason = "the precise al...
RFC 1054 RFC 2015-04-10 ~1 min read
github.com
## Summary Deprecate `std::fs::soft_link` in favor of platform-specific versions: `std::os::unix::fs::symlink`, `std::os::windows::fs::symlink_file`, and `std::os::windows::fs::symlink_dir`. ## Motivation Windows Vista introduced the abilit...
RFC 1048 RFC 2015-04-09 ~6 min read
github.com
## Summary Add sockopt-style timeouts to `std::net` types. ## Motivation Currently, operations on various socket types in `std::net` block indefinitely (i.e., until the connection is closed or data is transferred). But there are many contex...
RFC 1047 RFC 2015-04-08 ~4 min read
github.com
## Summary Expand the scope of the `std::fs` module by enhancing existing functionality, exposing lower-level representations, and adding a few new functions. ## Motivation The current `std::fs` module serves many of the basic needs of inte...
RFC 1044 RFC 2015-04-04 ~16 min read
github.com
NA
## Summary Add `Default`, `IntoIterator` and `ToOwned` trait to the prelude. ## Motivation Each trait has a distinct motivation: * For `Default`, the ergonomics have vastly improved now that you can write `MyType::default()` (thanks to UFCS...
RFC 1030 RFC 2015-04-03 ~1 min read
github.com
## Summary This RFC proposes two rule changes: 1. Modify the orphan rules so that impls of remote traits require a local type that is either a struct/enum/trait defined in the current crate `LT = LocalTypeConstructor<...>` or a reference to...
RFC 1023 RFC 2015-03-27 ~9 min read
github.com
## Summary When calling `println!` it currently causes a panic if `stdout` does not exist. Change this to ignore this specific error and simply void the output. ## Motivation On Linux `stdout` almost always exists, so when people write game...
RFC 1014 RFC 2015-03-25 ~2 min read
github.com
## Summary Add a function to the `std::process` module to exit the process immediately with a specified exit code. ## Motivation Currently there is no stable method to exit a program in Rust with a nonzero exit code without panicking. The c...
RFC 1011 RFC 2015-03-24 ~2 min read
github.com
## Summary This RFC suggests stabilizing a reduced-scope `Duration` type that is appropriate for interoperating with various system calls that require timeouts. It does not stabilize a large number of conversion methods in `Duration` that h...
RFC 1040 RFC 2015-03-24 ~7 min read
github.com
## Summary Restrict closure return type syntax for future compatibility. ## Motivation Today's closure return type syntax juxtaposes a type and an expression. This is dangerous: if we choose to extend the type grammar to be more acceptable,...
RFC 968 RFC 2015-03-16 ~1 min read
github.com
## Summary Custom coercions allow smart pointers to fully participate in the DST system. In particular, they allow practical use of `Rc<T>` and `Arc<T>` where `T` is unsized. This RFC subsumes part of [RFC 401 coercions](https://github.com/...
RFC 982 RFC 2015-03-16 ~6 min read
"IEEE 754 floating point, proudly providing counterexamples since 1985!"

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.