mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-18 11:34:11 +00:00
Replace more Name::to_string usages with Name::to_smol_str
This commit is contained in:
parent
962be38004
commit
439a8194b0
@ -580,7 +580,7 @@ impl Module {
|
|||||||
});
|
});
|
||||||
for token in tokens {
|
for token in tokens {
|
||||||
if token.kind() == SyntaxKind::IDENT
|
if token.kind() == SyntaxKind::IDENT
|
||||||
&& token.text() == derive_name.as_str()
|
&& token.text() == &**derive_name
|
||||||
{
|
{
|
||||||
precise_location = Some(token.text_range());
|
precise_location = Some(token.text_range());
|
||||||
break 'outer;
|
break 'outer;
|
||||||
@ -606,7 +606,12 @@ impl Module {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
acc.push(
|
acc.push(
|
||||||
UnresolvedProcMacro { node, precise_location, macro_name: name }.into(),
|
UnresolvedProcMacro {
|
||||||
|
node,
|
||||||
|
precise_location,
|
||||||
|
macro_name: name.map(Into::into),
|
||||||
|
}
|
||||||
|
.into(),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2219,7 +2224,7 @@ impl Impl {
|
|||||||
.attrs()
|
.attrs()
|
||||||
.filter_map(|it| {
|
.filter_map(|it| {
|
||||||
let path = ModPath::from_src(db.upcast(), it.path()?, &hygenic)?;
|
let path = ModPath::from_src(db.upcast(), it.path()?, &hygenic)?;
|
||||||
if path.as_ident()?.to_string() == "derive" {
|
if path.as_ident()?.to_smol_str() == "derive" {
|
||||||
Some(it)
|
Some(it)
|
||||||
} else {
|
} else {
|
||||||
None
|
None
|
||||||
|
@ -796,7 +796,7 @@ impl<'a> AttrQuery<'a> {
|
|||||||
let key = self.key;
|
let key = self.key;
|
||||||
self.attrs
|
self.attrs
|
||||||
.iter()
|
.iter()
|
||||||
.filter(move |attr| attr.path.as_ident().map_or(false, |s| s.to_string() == key))
|
.filter(move |attr| attr.path.as_ident().map_or(false, |s| s.to_smol_str() == key))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -282,7 +282,7 @@ mod tests {
|
|||||||
let actual = scopes
|
let actual = scopes
|
||||||
.scope_chain(scope)
|
.scope_chain(scope)
|
||||||
.flat_map(|scope| scopes.entries(scope))
|
.flat_map(|scope| scopes.entries(scope))
|
||||||
.map(|it| it.name().to_string())
|
.map(|it| it.name().to_smol_str())
|
||||||
.collect::<Vec<_>>()
|
.collect::<Vec<_>>()
|
||||||
.join("\n");
|
.join("\n");
|
||||||
let expected = expected.join("\n");
|
let expected = expected.join("\n");
|
||||||
|
@ -449,7 +449,7 @@ impl<'a> Ctx<'a> {
|
|||||||
|
|
||||||
fn lower_const(&mut self, konst: &ast::Const) -> FileItemTreeId<Const> {
|
fn lower_const(&mut self, konst: &ast::Const) -> FileItemTreeId<Const> {
|
||||||
let mut name = konst.name().map(|it| it.as_name());
|
let mut name = konst.name().map(|it| it.as_name());
|
||||||
if name.as_ref().map_or(false, |n| n.to_string().starts_with("_DERIVE_")) {
|
if name.as_ref().map_or(false, |n| n.to_smol_str().starts_with("_DERIVE_")) {
|
||||||
// FIXME: this is a hack to treat consts generated by synstructure as unnamed
|
// FIXME: this is a hack to treat consts generated by synstructure as unnamed
|
||||||
// remove this some time in the future
|
// remove this some time in the future
|
||||||
name = None;
|
name = None;
|
||||||
|
@ -764,7 +764,7 @@ fn derive_macro_as_call_id(
|
|||||||
krate,
|
krate,
|
||||||
MacroCallKind::Derive {
|
MacroCallKind::Derive {
|
||||||
ast_id: item_attr.ast_id,
|
ast_id: item_attr.ast_id,
|
||||||
derive_name: last_segment.to_string(),
|
derive_name: last_segment.to_string().into_boxed_str(),
|
||||||
derive_attr_index: derive_attr.ast_index,
|
derive_attr_index: derive_attr.ast_index,
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
@ -801,7 +801,7 @@ fn attr_macro_as_call_id(
|
|||||||
krate,
|
krate,
|
||||||
MacroCallKind::Attr {
|
MacroCallKind::Attr {
|
||||||
ast_id: item_attr.ast_id,
|
ast_id: item_attr.ast_id,
|
||||||
attr_name: last_segment.to_string(),
|
attr_name: last_segment.to_string().into_boxed_str(),
|
||||||
attr_args: arg,
|
attr_args: arg,
|
||||||
invoc_attr_index: macro_attr.id.ast_index,
|
invoc_attr_index: macro_attr.id.ast_index,
|
||||||
},
|
},
|
||||||
|
@ -1759,7 +1759,7 @@ impl ModCollector<'_, '_> {
|
|||||||
fn is_builtin_or_registered_attr(&self, path: &ModPath) -> bool {
|
fn is_builtin_or_registered_attr(&self, path: &ModPath) -> bool {
|
||||||
if path.kind == PathKind::Plain {
|
if path.kind == PathKind::Plain {
|
||||||
if let Some(tool_module) = path.segments().first() {
|
if let Some(tool_module) = path.segments().first() {
|
||||||
let tool_module = tool_module.to_string();
|
let tool_module = tool_module.to_smol_str();
|
||||||
let is_tool = builtin_attr::TOOL_MODULES
|
let is_tool = builtin_attr::TOOL_MODULES
|
||||||
.iter()
|
.iter()
|
||||||
.copied()
|
.copied()
|
||||||
@ -1771,7 +1771,7 @@ impl ModCollector<'_, '_> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if let Some(name) = path.as_ident() {
|
if let Some(name) = path.as_ident() {
|
||||||
let name = name.to_string();
|
let name = name.to_smol_str();
|
||||||
let is_inert = builtin_attr::INERT_ATTRIBUTES
|
let is_inert = builtin_attr::INERT_ATTRIBUTES
|
||||||
.iter()
|
.iter()
|
||||||
.chain(builtin_attr::EXTRA_ATTRIBUTES)
|
.chain(builtin_attr::EXTRA_ATTRIBUTES)
|
||||||
|
@ -42,7 +42,7 @@ impl ModDir {
|
|||||||
let path = match attr_path.map(|it| it.as_str()) {
|
let path = match attr_path.map(|it| it.as_str()) {
|
||||||
None => {
|
None => {
|
||||||
let mut path = self.dir_path.clone();
|
let mut path = self.dir_path.clone();
|
||||||
path.push(&name.to_string());
|
path.push(&name.to_smol_str());
|
||||||
path
|
path
|
||||||
}
|
}
|
||||||
Some(attr_path) => {
|
Some(attr_path) => {
|
||||||
|
@ -46,7 +46,7 @@ impl Display for ImportAlias {
|
|||||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
match self {
|
match self {
|
||||||
ImportAlias::Underscore => f.write_str("_"),
|
ImportAlias::Underscore => f.write_str("_"),
|
||||||
ImportAlias::Alias(name) => f.write_str(&name.to_string()),
|
ImportAlias::Alias(name) => f.write_str(&name.to_smol_str()),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -122,7 +122,7 @@ pub enum MacroCallKind {
|
|||||||
},
|
},
|
||||||
Derive {
|
Derive {
|
||||||
ast_id: AstId<ast::Item>,
|
ast_id: AstId<ast::Item>,
|
||||||
derive_name: String,
|
derive_name: Box<str>,
|
||||||
/// Syntactical index of the invoking `#[derive]` attribute.
|
/// Syntactical index of the invoking `#[derive]` attribute.
|
||||||
///
|
///
|
||||||
/// Outer attributes are counted first, then inner attributes. This does not support
|
/// Outer attributes are counted first, then inner attributes. This does not support
|
||||||
@ -131,7 +131,7 @@ pub enum MacroCallKind {
|
|||||||
},
|
},
|
||||||
Attr {
|
Attr {
|
||||||
ast_id: AstId<ast::Item>,
|
ast_id: AstId<ast::Item>,
|
||||||
attr_name: String,
|
attr_name: Box<str>,
|
||||||
attr_args: (tt::Subtree, mbe::TokenMap),
|
attr_args: (tt::Subtree, mbe::TokenMap),
|
||||||
/// Syntactical index of the invoking `#[attribute]`.
|
/// Syntactical index of the invoking `#[attribute]`.
|
||||||
///
|
///
|
||||||
|
@ -84,7 +84,8 @@ impl Name {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Returns the textual representation of this name as a [`SmolStr`].
|
/// Returns the textual representation of this name as a [`SmolStr`].
|
||||||
/// Prefer using this over [`ToString::to_string`] if possible as this conversion is cheaper.
|
/// Prefer using this over [`ToString::to_string`] if possible as this conversion is cheaper in
|
||||||
|
/// the general case.
|
||||||
pub fn to_smol_str(&self) -> SmolStr {
|
pub fn to_smol_str(&self) -> SmolStr {
|
||||||
match &self.0 {
|
match &self.0 {
|
||||||
Repr::Text(it) => it.clone(),
|
Repr::Text(it) => it.clone(),
|
||||||
|
@ -90,7 +90,7 @@ impl NavigationTarget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) fn from_module_to_decl(db: &RootDatabase, module: hir::Module) -> NavigationTarget {
|
pub(crate) fn from_module_to_decl(db: &RootDatabase, module: hir::Module) -> NavigationTarget {
|
||||||
let name = module.name(db).map(|it| it.to_string().into()).unwrap_or_default();
|
let name = module.name(db).map(|it| it.to_smol_str()).unwrap_or_default();
|
||||||
if let Some(src) = module.declaration_source(db) {
|
if let Some(src) = module.declaration_source(db) {
|
||||||
let node = src.syntax();
|
let node = src.syntax();
|
||||||
let full_range = node.original_file_range(db);
|
let full_range = node.original_file_range(db);
|
||||||
@ -275,7 +275,7 @@ where
|
|||||||
impl ToNav for hir::Module {
|
impl ToNav for hir::Module {
|
||||||
fn to_nav(&self, db: &RootDatabase) -> NavigationTarget {
|
fn to_nav(&self, db: &RootDatabase) -> NavigationTarget {
|
||||||
let src = self.definition_source(db);
|
let src = self.definition_source(db);
|
||||||
let name = self.name(db).map(|it| it.to_string().into()).unwrap_or_default();
|
let name = self.name(db).map(|it| it.to_smol_str()).unwrap_or_default();
|
||||||
let (syntax, focus) = match &src.value {
|
let (syntax, focus) = match &src.value {
|
||||||
ModuleSource::SourceFile(node) => (node.syntax(), None),
|
ModuleSource::SourceFile(node) => (node.syntax(), None),
|
||||||
ModuleSource::Module(node) => {
|
ModuleSource::Module(node) => {
|
||||||
@ -399,7 +399,7 @@ impl ToNav for hir::Local {
|
|||||||
|
|
||||||
let full_range = src.with_value(&node).original_file_range(db);
|
let full_range = src.with_value(&node).original_file_range(db);
|
||||||
let name = match self.name(db) {
|
let name = match self.name(db) {
|
||||||
Some(it) => it.to_string().into(),
|
Some(it) => it.to_smol_str(),
|
||||||
None => "".into(),
|
None => "".into(),
|
||||||
};
|
};
|
||||||
let kind = if self.is_self(db) {
|
let kind = if self.is_self(db) {
|
||||||
@ -429,7 +429,7 @@ impl ToNav for hir::Label {
|
|||||||
let FileRange { file_id, range } = src.with_value(node).original_file_range(db);
|
let FileRange { file_id, range } = src.with_value(node).original_file_range(db);
|
||||||
let focus_range =
|
let focus_range =
|
||||||
src.value.lifetime().and_then(|lt| lt.lifetime_ident_token()).map(|lt| lt.text_range());
|
src.value.lifetime().and_then(|lt| lt.lifetime_ident_token()).map(|lt| lt.text_range());
|
||||||
let name = self.name(db).to_string().into();
|
let name = self.name(db).to_smol_str();
|
||||||
NavigationTarget {
|
NavigationTarget {
|
||||||
file_id,
|
file_id,
|
||||||
name,
|
name,
|
||||||
@ -459,7 +459,7 @@ impl TryToNav for hir::TypeParam {
|
|||||||
.map(|it| it.syntax().text_range());
|
.map(|it| it.syntax().text_range());
|
||||||
Some(NavigationTarget {
|
Some(NavigationTarget {
|
||||||
file_id: src.file_id.original_file(db),
|
file_id: src.file_id.original_file(db),
|
||||||
name: self.name(db).to_string().into(),
|
name: self.name(db).to_smol_str(),
|
||||||
kind: Some(SymbolKind::TypeParam),
|
kind: Some(SymbolKind::TypeParam),
|
||||||
full_range,
|
full_range,
|
||||||
focus_range,
|
focus_range,
|
||||||
@ -476,7 +476,7 @@ impl TryToNav for hir::LifetimeParam {
|
|||||||
let full_range = src.value.syntax().text_range();
|
let full_range = src.value.syntax().text_range();
|
||||||
Some(NavigationTarget {
|
Some(NavigationTarget {
|
||||||
file_id: src.file_id.original_file(db),
|
file_id: src.file_id.original_file(db),
|
||||||
name: self.name(db).to_string().into(),
|
name: self.name(db).to_smol_str(),
|
||||||
kind: Some(SymbolKind::LifetimeParam),
|
kind: Some(SymbolKind::LifetimeParam),
|
||||||
full_range,
|
full_range,
|
||||||
focus_range: Some(full_range),
|
focus_range: Some(full_range),
|
||||||
@ -493,7 +493,7 @@ impl TryToNav for hir::ConstParam {
|
|||||||
let full_range = src.value.syntax().text_range();
|
let full_range = src.value.syntax().text_range();
|
||||||
Some(NavigationTarget {
|
Some(NavigationTarget {
|
||||||
file_id: src.file_id.original_file(db),
|
file_id: src.file_id.original_file(db),
|
||||||
name: self.name(db).to_string().into(),
|
name: self.name(db).to_smol_str(),
|
||||||
kind: Some(SymbolKind::ConstParam),
|
kind: Some(SymbolKind::ConstParam),
|
||||||
full_range,
|
full_range,
|
||||||
focus_range: src.value.name().map(|n| n.syntax().text_range()),
|
focus_range: src.value.name().map(|n| n.syntax().text_range()),
|
||||||
|
@ -344,7 +344,7 @@ fn pat_is_enum_variant(db: &RootDatabase, bind_pat: &ast::IdentPat, pat_ty: &hir
|
|||||||
enum_data
|
enum_data
|
||||||
.variants(db)
|
.variants(db)
|
||||||
.into_iter()
|
.into_iter()
|
||||||
.map(|variant| variant.name(db).to_string())
|
.map(|variant| variant.name(db).to_smol_str())
|
||||||
.any(|enum_name| enum_name == pat_text)
|
.any(|enum_name| enum_name == pat_text)
|
||||||
} else {
|
} else {
|
||||||
false
|
false
|
||||||
@ -363,7 +363,7 @@ fn should_not_display_type_hint(
|
|||||||
}
|
}
|
||||||
|
|
||||||
if let Some(hir::Adt::Struct(s)) = pat_ty.as_adt() {
|
if let Some(hir::Adt::Struct(s)) = pat_ty.as_adt() {
|
||||||
if s.fields(db).is_empty() && s.name(db).to_string() == bind_pat.to_string() {
|
if s.fields(db).is_empty() && s.name(db).to_smol_str() == bind_pat.to_string() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -419,7 +419,7 @@ fn should_hide_param_name_hint(
|
|||||||
}
|
}
|
||||||
|
|
||||||
let fn_name = match callable.kind() {
|
let fn_name = match callable.kind() {
|
||||||
hir::CallableKind::Function(it) => Some(it.name(sema.db).to_string()),
|
hir::CallableKind::Function(it) => Some(it.name(sema.db).to_smol_str()),
|
||||||
_ => None,
|
_ => None,
|
||||||
};
|
};
|
||||||
let fn_name = fn_name.as_deref();
|
let fn_name = fn_name.as_deref();
|
||||||
@ -475,7 +475,9 @@ fn is_enum_name_similar_to_param_name(
|
|||||||
param_name: &str,
|
param_name: &str,
|
||||||
) -> bool {
|
) -> bool {
|
||||||
match sema.type_of_expr(argument).and_then(|t| t.original.as_adt()) {
|
match sema.type_of_expr(argument).and_then(|t| t.original.as_adt()) {
|
||||||
Some(hir::Adt::Enum(e)) => to_lower_snake_case(&e.name(sema.db).to_string()) == param_name,
|
Some(hir::Adt::Enum(e)) => {
|
||||||
|
to_lower_snake_case(&e.name(sema.db).to_smol_str()) == param_name
|
||||||
|
}
|
||||||
_ => false,
|
_ => false,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -159,7 +159,7 @@ fn find_definitions(
|
|||||||
// if the name differs from the definitions name it has to be an alias
|
// if the name differs from the definitions name it has to be an alias
|
||||||
if def
|
if def
|
||||||
.name(sema.db)
|
.name(sema.db)
|
||||||
.map_or(false, |it| it.to_string() != name_ref.text())
|
.map_or(false, |it| it.to_smol_str() != name_ref.text().as_str())
|
||||||
{
|
{
|
||||||
Err(format_err!("Renaming aliases is currently unsupported"))
|
Err(format_err!("Renaming aliases is currently unsupported"))
|
||||||
} else {
|
} else {
|
||||||
|
@ -209,7 +209,7 @@ pub(crate) fn compute_fuzzy_completion_order_key(
|
|||||||
) -> usize {
|
) -> usize {
|
||||||
cov_mark::hit!(certain_fuzzy_order_test);
|
cov_mark::hit!(certain_fuzzy_order_test);
|
||||||
let import_name = match proposed_mod_path.segments().last() {
|
let import_name = match proposed_mod_path.segments().last() {
|
||||||
Some(name) => name.to_string().to_lowercase(),
|
Some(name) => name.to_smol_str().to_lowercase(),
|
||||||
None => return usize::MAX,
|
None => return usize::MAX,
|
||||||
};
|
};
|
||||||
match import_name.match_indices(user_input_lowercased).next() {
|
match import_name.match_indices(user_input_lowercased).next() {
|
||||||
|
@ -34,7 +34,7 @@ pub(crate) fn complete_lifetime(acc: &mut Completions, ctx: &CompletionContext)
|
|||||||
|
|
||||||
ctx.scope.process_all_names(&mut |name, res| {
|
ctx.scope.process_all_names(&mut |name, res| {
|
||||||
if let ScopeDef::GenericParam(hir::GenericParam::LifetimeParam(_)) = res {
|
if let ScopeDef::GenericParam(hir::GenericParam::LifetimeParam(_)) = res {
|
||||||
if param_lifetime != Some(&*name.to_string()) {
|
if param_lifetime != Some(&*name.to_smol_str()) {
|
||||||
acc.add_resolution(ctx, name, &res);
|
acc.add_resolution(ctx, name, &res);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -121,7 +121,7 @@ fn directory_to_look_for_submodules(
|
|||||||
module_chain_to_containing_module_file(module, db)
|
module_chain_to_containing_module_file(module, db)
|
||||||
.into_iter()
|
.into_iter()
|
||||||
.filter_map(|module| module.name(db))
|
.filter_map(|module| module.name(db))
|
||||||
.try_fold(base_directory, |path, name| path.join(&name.to_string()))
|
.try_fold(base_directory, |path, name| path.join(&name.to_smol_str()))
|
||||||
}
|
}
|
||||||
|
|
||||||
fn module_chain_to_containing_module_file(
|
fn module_chain_to_containing_module_file(
|
||||||
|
@ -404,7 +404,7 @@ impl NameRefClass {
|
|||||||
hir::AssocItem::TypeAlias(it) => Some(*it),
|
hir::AssocItem::TypeAlias(it) => Some(*it),
|
||||||
_ => None,
|
_ => None,
|
||||||
})
|
})
|
||||||
.find(|alias| alias.name(sema.db).to_string() == name_ref.text())
|
.find(|alias| alias.name(sema.db).to_smol_str() == name_ref.text().as_str())
|
||||||
{
|
{
|
||||||
return Some(NameRefClass::Definition(Definition::ModuleDef(
|
return Some(NameRefClass::Definition(Definition::ModuleDef(
|
||||||
ModuleDef::TypeAlias(ty),
|
ModuleDef::TypeAlias(ty),
|
||||||
|
@ -113,7 +113,7 @@ pub fn mod_path_to_ast(path: &hir::ModPath) -> ast::Path {
|
|||||||
segments.extend(
|
segments.extend(
|
||||||
path.segments()
|
path.segments()
|
||||||
.iter()
|
.iter()
|
||||||
.map(|segment| make::path_segment(make::name_ref(&segment.to_string()))),
|
.map(|segment| make::path_segment(make::name_ref(&segment.to_smol_str()))),
|
||||||
);
|
);
|
||||||
make::path_from_segments(segments, is_abs)
|
make::path_from_segments(segments, is_abs)
|
||||||
}
|
}
|
||||||
|
@ -139,7 +139,7 @@ impl FamousDefs<'_, '_> {
|
|||||||
let krate = self.1?;
|
let krate = self.1?;
|
||||||
let db = self.0.db;
|
let db = self.0.db;
|
||||||
let res =
|
let res =
|
||||||
krate.dependencies(db).into_iter().find(|dep| dep.name.to_string() == name)?.krate;
|
krate.dependencies(db).into_iter().find(|dep| dep.name.to_smol_str() == name)?.krate;
|
||||||
Some(res)
|
Some(res)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -153,7 +153,7 @@ impl FamousDefs<'_, '_> {
|
|||||||
for segment in path {
|
for segment in path {
|
||||||
module = module.children(db).find_map(|child| {
|
module = module.children(db).find_map(|child| {
|
||||||
let name = child.name(db)?;
|
let name = child.name(db)?;
|
||||||
if name.to_string() == segment {
|
if name.to_smol_str() == segment {
|
||||||
Some(child)
|
Some(child)
|
||||||
} else {
|
} else {
|
||||||
None
|
None
|
||||||
@ -161,7 +161,7 @@ impl FamousDefs<'_, '_> {
|
|||||||
})?;
|
})?;
|
||||||
}
|
}
|
||||||
let def =
|
let def =
|
||||||
module.scope(db, None).into_iter().find(|(name, _def)| name.to_string() == trait_)?.1;
|
module.scope(db, None).into_iter().find(|(name, _def)| name.to_smol_str() == trait_)?.1;
|
||||||
Some(def)
|
Some(def)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -410,7 +410,7 @@ fn find_import_for_segment(
|
|||||||
unresolved_first_segment: &str,
|
unresolved_first_segment: &str,
|
||||||
) -> Option<ItemInNs> {
|
) -> Option<ItemInNs> {
|
||||||
let segment_is_name = item_name(db, original_item)
|
let segment_is_name = item_name(db, original_item)
|
||||||
.map(|name| name.to_string() == unresolved_first_segment)
|
.map(|name| name.to_smol_str() == unresolved_first_segment)
|
||||||
.unwrap_or(false);
|
.unwrap_or(false);
|
||||||
|
|
||||||
Some(if segment_is_name {
|
Some(if segment_is_name {
|
||||||
@ -434,7 +434,7 @@ fn module_with_segment_name(
|
|||||||
};
|
};
|
||||||
while let Some(module) = current_module {
|
while let Some(module) = current_module {
|
||||||
if let Some(module_name) = module.name(db) {
|
if let Some(module_name) = module.name(db) {
|
||||||
if module_name.to_string() == segment_name {
|
if module_name.to_smol_str() == segment_name {
|
||||||
return Some(module);
|
return Some(module);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -385,7 +385,7 @@ impl<'a> FindUsages<'a> {
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
let name = match name {
|
let name = match name {
|
||||||
Some(name) => name.to_string(),
|
Some(name) => name.to_smol_str(),
|
||||||
None => return,
|
None => return,
|
||||||
};
|
};
|
||||||
let name = name.as_str();
|
let name = name.as_str();
|
||||||
|
@ -26,7 +26,7 @@ impl TryEnum {
|
|||||||
_ => return None,
|
_ => return None,
|
||||||
};
|
};
|
||||||
TryEnum::ALL.iter().find_map(|&var| {
|
TryEnum::ALL.iter().find_map(|&var| {
|
||||||
if enum_.name(sema.db).to_string() == var.type_name() {
|
if enum_.name(sema.db).to_smol_str() == var.type_name() {
|
||||||
return Some(var);
|
return Some(var);
|
||||||
}
|
}
|
||||||
None
|
None
|
||||||
|
@ -76,7 +76,7 @@ fn fixes(ctx: &DiagnosticsContext<'_>, d: &hir::MissingFields) -> Option<Vec<Ass
|
|||||||
Some(make::ext::expr_todo())
|
Some(make::ext::expr_todo())
|
||||||
};
|
};
|
||||||
let field =
|
let field =
|
||||||
make::record_expr_field(make::name_ref(&f.name(ctx.sema.db).to_string()), field_expr)
|
make::record_expr_field(make::name_ref(&f.name(ctx.sema.db).to_smol_str()), field_expr)
|
||||||
.clone_for_update();
|
.clone_for_update();
|
||||||
new_field_list.add_field(field);
|
new_field_list.add_field(field);
|
||||||
}
|
}
|
||||||
|
@ -226,7 +226,7 @@ impl<'db> ResolutionScope<'db> {
|
|||||||
None,
|
None,
|
||||||
|_ty, assoc_item| {
|
|_ty, assoc_item| {
|
||||||
let item_name = assoc_item.name(self.scope.db)?;
|
let item_name = assoc_item.name(self.scope.db)?;
|
||||||
if item_name.to_string().as_str() == name.text() {
|
if item_name.to_smol_str().as_str() == name.text() {
|
||||||
Some(hir::PathResolution::AssocItem(assoc_item))
|
Some(hir::PathResolution::AssocItem(assoc_item))
|
||||||
} else {
|
} else {
|
||||||
None
|
None
|
||||||
|
Loading…
Reference in New Issue
Block a user