mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-26 04:53:34 +00:00
Cleanup imports
This commit is contained in:
parent
a5b5582836
commit
ad0648dc95
3 changed files with 12 additions and 6 deletions
|
@ -21,8 +21,6 @@ use profile::Count;
|
|||
use rustc_hash::FxHashMap;
|
||||
use syntax::{ast, AstNode, AstPtr};
|
||||
|
||||
pub use lower::LowerCtx;
|
||||
|
||||
use crate::{
|
||||
attr::{Attrs, RawAttrs},
|
||||
db::DefDatabase,
|
||||
|
@ -35,6 +33,8 @@ use crate::{
|
|||
UnresolvedMacro,
|
||||
};
|
||||
|
||||
pub use lower::LowerCtx;
|
||||
|
||||
/// A subset of Expander that only deals with cfg attributes. We only need it to
|
||||
/// avoid cyclic queries in crate def map during enum processing.
|
||||
#[derive(Debug)]
|
||||
|
|
|
@ -6,14 +6,13 @@ mod text_token_source;
|
|||
mod text_tree_sink;
|
||||
mod reparsing;
|
||||
|
||||
use crate::{syntax_node::GreenNode, AstNode, SyntaxError, SyntaxNode};
|
||||
use parser::SyntaxKind;
|
||||
use text_token_source::TextTokenSource;
|
||||
use text_tree_sink::TextTreeSink;
|
||||
|
||||
pub(crate) use lexer::*;
|
||||
use crate::{syntax_node::GreenNode, AstNode, SyntaxError, SyntaxNode};
|
||||
|
||||
pub(crate) use self::reparsing::incremental_reparse;
|
||||
use parser::SyntaxKind;
|
||||
pub(crate) use crate::parsing::{lexer::*, reparsing::incremental_reparse};
|
||||
|
||||
pub(crate) fn parse_text(text: &str) -> (GreenNode, Vec<SyntaxError>) {
|
||||
let (tokens, lexer_errors) = tokenize(&text);
|
||||
|
|
|
@ -636,6 +636,10 @@ use crate::{}
|
|||
|
||||
// Finally, parent and child modules, but prefer `use crate::`.
|
||||
use super::{}
|
||||
|
||||
// Re-exports are treated as item definitions rather than imports, so they go
|
||||
// after imports and modules. Use them sparingly.
|
||||
pub use crate::x::Z;
|
||||
```
|
||||
|
||||
**Rationale:** consistency.
|
||||
|
@ -694,6 +698,9 @@ Avoid local `use MyEnum::*` imports.
|
|||
Prefer `use crate::foo::bar` to `use super::bar` or `use self::bar::baz`.
|
||||
**Rationale:** consistency, this is the style which works in all cases.
|
||||
|
||||
By default, avoid re-exports.
|
||||
**Rationale:** for non-library code, re-exports introduce two ways to use something and allow for inconsistency.
|
||||
|
||||
## Order of Items
|
||||
|
||||
Optimize for the reader who sees the file for the first time, and wants to get a general idea about what's going on.
|
||||
|
|
Loading…
Reference in a new issue