Add semantic highlight to QUESTION token

Made it an operator with controlFlow modifier.
This commit is contained in:
Roland Ruckerbauer 2020-05-29 21:17:14 +02:00
parent 30658b25d2
commit 18aa4bcb03
3 changed files with 4 additions and 0 deletions

View file

@ -391,6 +391,7 @@ fn highlight_element(
INT_NUMBER | FLOAT_NUMBER => HighlightTag::NumericLiteral.into(),
BYTE => HighlightTag::ByteLiteral.into(),
CHAR => HighlightTag::CharLiteral.into(),
QUESTION => Highlight::new(HighlightTag::Operator) | HighlightModifier::ControlFlow,
LIFETIME => {
let h = Highlight::new(HighlightTag::Lifetime);
match element.parent().map(|it| it.kind()) {

View file

@ -42,6 +42,7 @@ pub enum HighlightTag {
Local,
UnresolvedReference,
FormatSpecifier,
Operator,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
@ -89,6 +90,7 @@ impl HighlightTag {
HighlightTag::Local => "variable",
HighlightTag::UnresolvedReference => "unresolved_reference",
HighlightTag::FormatSpecifier => "format_specifier",
HighlightTag::Operator => "operator",
}
}
}

View file

@ -317,6 +317,7 @@ fn semantic_token_type_and_modifiers(
HighlightTag::Keyword => lsp_types::SemanticTokenType::KEYWORD,
HighlightTag::UnresolvedReference => semantic_tokens::UNRESOLVED_REFERENCE,
HighlightTag::FormatSpecifier => semantic_tokens::FORMAT_SPECIFIER,
HighlightTag::Operator => lsp_types::SemanticTokenType::OPERATOR,
};
for modifier in highlight.modifiers.iter() {