diff options
| -rw-r--r-- | crates/ra_ide/src/snapshots/highlighting.html | 8 | ||||
| -rw-r--r-- | crates/ra_ide/src/syntax_highlighting.rs | 1 | ||||
| -rw-r--r-- | crates/ra_ide/src/syntax_highlighting/tags.rs | 2 | ||||
| -rw-r--r-- | crates/rust-analyzer/src/semantic_tokens.rs | 1 | ||||
| -rw-r--r-- | crates/rust-analyzer/src/to_proto.rs | 1 | ||||
| -rw-r--r-- | editors/code/package.json | 10 |
6 files changed, 19 insertions, 4 deletions
diff --git a/crates/ra_ide/src/snapshots/highlighting.html b/crates/ra_ide/src/snapshots/highlighting.html index 198139220ef..352e350955f 100644 --- a/crates/ra_ide/src/snapshots/highlighting.html +++ b/crates/ra_ide/src/snapshots/highlighting.html @@ -35,12 +35,12 @@ pre { color: #DCDCCC; background: #3F3F3F; font-size: 22px; padd } <span class="keyword">trait</span> <span class="trait declaration">Bar</span> { - <span class="keyword">fn</span> <span class="function declaration">bar</span>(&<span class="keyword">self</span>) -> <span class="builtin_type">i32</span>; + <span class="keyword">fn</span> <span class="function declaration">bar</span>(&<span class="self_keyword">self</span>) -> <span class="builtin_type">i32</span>; } <span class="keyword">impl</span> <span class="trait">Bar</span> <span class="keyword">for</span> <span class="struct">Foo</span> { - <span class="keyword">fn</span> <span class="function declaration">bar</span>(&<span class="keyword">self</span>) -> <span class="builtin_type">i32</span> { - <span class="keyword">self</span>.<span class="field">x</span> + <span class="keyword">fn</span> <span class="function declaration">bar</span>(&<span class="self_keyword">self</span>) -> <span class="builtin_type">i32</span> { + <span class="self_keyword">self</span>.<span class="field">x</span> } } @@ -92,7 +92,7 @@ pre { color: #DCDCCC; background: #3F3F3F; font-size: 22px; padd <span class="keyword">use</span> <span class="enum">Option</span>::*; <span class="keyword">impl</span><<span class="type_param declaration">T</span>> <span class="enum">Option</span><<span class="type_param">T</span>> { - <span class="keyword">fn</span> <span class="function declaration">and</span><<span class="type_param declaration">U</span>>(<span class="keyword">self</span>, <span class="variable declaration">other</span>: <span class="enum">Option</span><<span class="type_param">U</span>>) -> <span class="enum">Option</span><(<span class="type_param">T</span>, <span class="type_param">U</span>)> { + <span class="keyword">fn</span> <span class="function declaration">and</span><<span class="type_param declaration">U</span>>(<span class="self_keyword">self</span>, <span class="variable declaration">other</span>: <span class="enum">Option</span><<span class="type_param">U</span>>) -> <span class="enum">Option</span><(<span class="type_param">T</span>, <span class="type_param">U</span>)> { <span class="keyword control">match</span> <span class="variable">other</span> { <span class="enum_variant">None</span> => <span class="macro">unimplemented!</span>(), <span class="variable declaration">Nope</span> => <span class="variable">Nope</span>, diff --git a/crates/ra_ide/src/syntax_highlighting.rs b/crates/ra_ide/src/syntax_highlighting.rs index 61aeb28cbc7..8a995d779ba 100644 --- a/crates/ra_ide/src/syntax_highlighting.rs +++ b/crates/ra_ide/src/syntax_highlighting.rs @@ -414,6 +414,7 @@ fn highlight_element( T![for] if !is_child_of_impl(element) => h | HighlightModifier::ControlFlow, T![unsafe] => h | HighlightModifier::Unsafe, T![true] | T![false] => HighlightTag::BoolLiteral.into(), + T![self] => HighlightTag::SelfKeyword.into(), _ => h, } } diff --git a/crates/ra_ide/src/syntax_highlighting/tags.rs b/crates/ra_ide/src/syntax_highlighting/tags.rs index 09652a5b1cc..46c718c91e2 100644 --- a/crates/ra_ide/src/syntax_highlighting/tags.rs +++ b/crates/ra_ide/src/syntax_highlighting/tags.rs @@ -30,6 +30,7 @@ pub enum HighlightTag { Macro, Module, NumericLiteral, + SelfKeyword, SelfType, Static, StringLiteral, @@ -76,6 +77,7 @@ impl HighlightTag { HighlightTag::Macro => "macro", HighlightTag::Module => "module", HighlightTag::NumericLiteral => "numeric_literal", + HighlightTag::SelfKeyword => "self_keyword", HighlightTag::SelfType => "self_type", HighlightTag::Static => "static", HighlightTag::StringLiteral => "string_literal", diff --git a/crates/rust-analyzer/src/semantic_tokens.rs b/crates/rust-analyzer/src/semantic_tokens.rs index 9b775871f0e..6f125c37cb9 100644 --- a/crates/rust-analyzer/src/semantic_tokens.rs +++ b/crates/rust-analyzer/src/semantic_tokens.rs @@ -40,6 +40,7 @@ define_semantic_token_types