rfcs
rfcs copied to clipboard
RFCs for changes to Rust
I would be in favor of implementing u48 and i48. There are few CPUs that support [48-bit integers](https://en.wikipedia.org/wiki/48-bit_computing) otherwise you could represent it as 16-bit and 32-bit numbers internally. But...
[Rendered](https://github.com/main--/rust-rfcs/blob/3b6495113ac1725e40eb02433329e18baf773a43/text/0000-debuginfo-based-panic.md) --- For a quick mockup of the basic idea, have a look at [this](https://github.com/main--/tyrion).
`Copy` values have special copy semantics, when they're moved away, the old place still have valid value alive. A lot of times this is not people want. For example, it's...
Optionally name the return types, as follows: ```rust fn some_fn(a: A, b: B) -> (_a, _c): (A, C) { // ... let xxx: A = ... ; let yyy: C...
Currently [slice patterns](https://doc.rust-lang.org/reference/patterns.html#slice-patterns) can match fixed sized arrays and dynamic sized slices. It would be useful in code over generic length array to also be able to match on dynamic...
This RFC suggests using the `move` keyword to explicitly specify the moving binding mode to override match ergonomics [Rendered](https://github.com/schuelermine/rfcs/blob/explicit-move-binding-mode/text/3410-explicit-move-binding-mode.md)
Sorry if there's already and issue for this, but I couldn't find one. On many occasions I've wanted to use macros to generate `match` branches. eg. ```rust match x {...
[Zig](https://ziglang.org) supports `comptime`, which is a keyword that allows for the evaluation of arbitrary expressions and entire functions at compile time. It is also used in Zig's implementation of generics,...
`std::iter::Iterator` has a method to get the last element, [`last()`](https://doc.rust-lang.org/std/iter/trait.Iterator.html#method.last). But why isn't there a `first()` to get the first element? There are times when `first()` comes handy, especially after...
Add a syntax and mechanism for macros to access "fields" of high-level fragment specifiers that they've matched, to let macros use the Rust parser for robustness and future compatibility, while...