Skip to content

Library Trait Evolution Experiment #712

Description

@nxsaken
Metadata
Point of contact @lcnr
Team(s) lang, libs, types
Goal document 2026/library-trait-evolution-experiment

Summary

Setup a Library Trait Evolution experiment. It works to unify the design of language features to make trait definitions less rigid. This includes refined trait implementations and Supertrait Auto-impl, but also more targeted features for the standard library, such as #[rustc_must_implement_one_of].

We plan to collect different use-cases and requirements here, both from the standard library and the wider ecosystem. We then use this to design, implement, and stabilize features solving these issues.

Tasks and status


Note: we have updated the body to match the 2026 goal. Your original text is preserved below.

Details

Metadata
Point of contact @lcnr
Team(s) lang, libs, types
Goal document 2026/library-trait-evolution-experiment

Summary

Setup a Library Trait Evolution experiment. It works to unify the design of language features to make trait definitions less rigid. This includes refined trait implementations and Supertrait Auto-impl, but also more targeted features for the standard library, such as #[rustc_must_implement_one_of].

We plan to collect different use-cases and requirements here, both from the standard library and the wider ecosystem. We then use this to design, implement, and stabilize features solving these issues.

Tasks and status

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions