diff --git a/crates/ra_ide/src/syntax_highlighting.rs b/crates/ra_ide/src/syntax_highlighting.rs index 30ca9d8b010c..c0f7c1c9ff93 100644 --- a/crates/ra_ide/src/syntax_highlighting.rs +++ b/crates/ra_ide/src/syntax_highlighting.rs @@ -292,7 +292,7 @@ fn highlight_name_by_syntax(name: ast::Name) -> Highlight { match parent.kind() { STRUCT_DEF => HighlightTag::Struct.into(), ENUM_DEF => HighlightTag::Enum.into(), - UNION_KW => HighlightTag::Union.into(), + UNION_DEF => HighlightTag::Union.into(), TRAIT_DEF => HighlightTag::Trait.into(), TYPE_ALIAS_DEF => HighlightTag::TypeAlias.into(), TYPE_PARAM => HighlightTag::TypeParam.into(), diff --git a/crates/ra_ide_db/src/defs.rs b/crates/ra_ide_db/src/defs.rs index e10e72f7112c..484755158731 100644 --- a/crates/ra_ide_db/src/defs.rs +++ b/crates/ra_ide_db/src/defs.rs @@ -90,6 +90,10 @@ pub fn classify_name(sema: &Semantics, name: &ast::Name) -> Option let def: hir::Struct = sema.to_def(&it)?; Some(from_module_def(def.into())) }, + ast::UnionDef(it) => { + let def: hir::Union = sema.to_def(&it)?; + Some(from_module_def(def.into())) + }, ast::EnumDef(it) => { let def: hir::Enum = sema.to_def(&it)?; Some(from_module_def(def.into())) diff --git a/editors/code/package.json b/editors/code/package.json index b013c3f4ae3f..862de32103f6 100644 --- a/editors/code/package.json +++ b/editors/code/package.json @@ -460,14 +460,12 @@ { "selector": "typeAlias", "scope": [ - "entity.name.type", "entity.name.typeAlias" ] }, { "selector": "union", "scope": [ - "entity.name.type", "entity.name.union" ] },