-
Notifications
You must be signed in to change notification settings - Fork 13.6k
Closed
Labels
A-frontendArea: Compiler frontend (errors, parsing and HIR)Area: Compiler frontend (errors, parsing and HIR)
Milestone
Description
Currently, nothing lives in the top level of std, and directory modules like rustc::syntax can't contain code. We want especially for the standard library to define things like std::option::t as std::option.
This is one way to achieve that goal.
We add a convention that a .rs file with the same name as a directory module provides that module's implementation, and a .rs file with the same name as a crate (or the .rc file) provides the crate-level module's implementation.
So for standard we might have a directory layout like:
lib/
coll.rs - the std::coll module's implementation
coll/
list.rs - the std::coll::list module
std.rc
std.rs the std module's implementation
We would probably want a way to explicitly override this as well.
Metadata
Metadata
Assignees
Labels
A-frontendArea: Compiler frontend (errors, parsing and HIR)Area: Compiler frontend (errors, parsing and HIR)