diff options
Diffstat (limited to 'crates/ra_ide/src/syntax_highlighting/tags.rs')
-rw-r--r-- | crates/ra_ide/src/syntax_highlighting/tags.rs | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/crates/ra_ide/src/syntax_highlighting/tags.rs b/crates/ra_ide/src/syntax_highlighting/tags.rs index 383c74c98..df2fc3c48 100644 --- a/crates/ra_ide/src/syntax_highlighting/tags.rs +++ b/crates/ra_ide/src/syntax_highlighting/tags.rs | |||
@@ -14,6 +14,13 @@ pub struct HighlightModifiers(u32); | |||
14 | 14 | ||
15 | #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)] | 15 | #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)] |
16 | pub enum HighlightTag { | 16 | pub enum HighlightTag { |
17 | Struct, | ||
18 | Enum, | ||
19 | Union, | ||
20 | Trait, | ||
21 | TypeAlias, | ||
22 | BuiltinType, | ||
23 | |||
17 | Field, | 24 | Field, |
18 | Function, | 25 | Function, |
19 | Module, | 26 | Module, |
@@ -21,7 +28,6 @@ pub enum HighlightTag { | |||
21 | Macro, | 28 | Macro, |
22 | Variable, | 29 | Variable, |
23 | 30 | ||
24 | Type, | ||
25 | TypeSelf, | 31 | TypeSelf, |
26 | TypeParam, | 32 | TypeParam, |
27 | TypeLifetime, | 33 | TypeLifetime, |
@@ -44,19 +50,24 @@ pub enum HighlightModifier { | |||
44 | Unsafe, | 50 | Unsafe, |
45 | /// Used with keywords like `if` and `break`. | 51 | /// Used with keywords like `if` and `break`. |
46 | Control, | 52 | Control, |
47 | Builtin, | ||
48 | } | 53 | } |
49 | 54 | ||
50 | impl HighlightTag { | 55 | impl HighlightTag { |
51 | fn as_str(self) -> &'static str { | 56 | fn as_str(self) -> &'static str { |
52 | match self { | 57 | match self { |
58 | HighlightTag::Struct => "struct", | ||
59 | HighlightTag::Enum => "enum", | ||
60 | HighlightTag::Union => "union", | ||
61 | HighlightTag::Trait => "trait", | ||
62 | HighlightTag::TypeAlias => "type_alias", | ||
63 | HighlightTag::BuiltinType => "builtin_type", | ||
64 | |||
53 | HighlightTag::Field => "field", | 65 | HighlightTag::Field => "field", |
54 | HighlightTag::Function => "function", | 66 | HighlightTag::Function => "function", |
55 | HighlightTag::Module => "module", | 67 | HighlightTag::Module => "module", |
56 | HighlightTag::Constant => "constant", | 68 | HighlightTag::Constant => "constant", |
57 | HighlightTag::Macro => "macro", | 69 | HighlightTag::Macro => "macro", |
58 | HighlightTag::Variable => "variable", | 70 | HighlightTag::Variable => "variable", |
59 | HighlightTag::Type => "type", | ||
60 | HighlightTag::TypeSelf => "type.self", | 71 | HighlightTag::TypeSelf => "type.self", |
61 | HighlightTag::TypeParam => "type.param", | 72 | HighlightTag::TypeParam => "type.param", |
62 | HighlightTag::TypeLifetime => "type.lifetime", | 73 | HighlightTag::TypeLifetime => "type.lifetime", |
@@ -78,19 +89,14 @@ impl fmt::Display for HighlightTag { | |||
78 | } | 89 | } |
79 | 90 | ||
80 | impl HighlightModifier { | 91 | impl HighlightModifier { |
81 | const ALL: &'static [HighlightModifier] = &[ | 92 | const ALL: &'static [HighlightModifier] = |
82 | HighlightModifier::Mutable, | 93 | &[HighlightModifier::Mutable, HighlightModifier::Unsafe, HighlightModifier::Control]; |
83 | HighlightModifier::Unsafe, | ||
84 | HighlightModifier::Control, | ||
85 | HighlightModifier::Builtin, | ||
86 | ]; | ||
87 | 94 | ||
88 | fn as_str(self) -> &'static str { | 95 | fn as_str(self) -> &'static str { |
89 | match self { | 96 | match self { |
90 | HighlightModifier::Mutable => "mutable", | 97 | HighlightModifier::Mutable => "mutable", |
91 | HighlightModifier::Unsafe => "unsafe", | 98 | HighlightModifier::Unsafe => "unsafe", |
92 | HighlightModifier::Control => "control", | 99 | HighlightModifier::Control => "control", |
93 | HighlightModifier::Builtin => "builtin", | ||
94 | } | 100 | } |
95 | } | 101 | } |
96 | 102 | ||