on master help sign in
add highlight scope for type parameters (#8660)
70bbbd7Joey Hain
book/src/themes.md+1
@@ -155,6 +155,7 @@ We use a similar set of scopes as
155
155
156- `type` - Types
156- `type` - Types
157 - `builtin` - Primitive types provided by the language (`int`, `usize`)
157 - `builtin` - Primitive types provided by the language (`int`, `usize`)
158+ - `parameter` - Generic type parameters (`T`)
158 - `enum`
159 - `enum`
159 - `variant`
160 - `variant`
160- `constructor`
161- `constructor`
runtime/queries/rust/highlights.scm+7
@@ -9,6 +9,13 @@
9; Types
9; Types
10; -------
10; -------
11
11
12+(type_parameters
13+ (type_identifier) @type.parameter)
14+(constrained_type_parameter
15+ left: (type_identifier) @type.parameter)
16+(optional_type_parameter
17+ name: (type_identifier) @type.parameter)
18+
12; ---
19; ---
13; Primitives
20; Primitives
14; ---
21; ---
runtime/queries/rust/locals.scm+14−1
@@ -2,6 +2,12 @@
2
2
3[
3[
4 (function_item)
4 (function_item)
5+ (struct_item)
6+ (enum_item)
7+ (union_item)
8+ (type_item)
9+ (trait_item)
10+ (impl_item)
5 (closure_expression)
11 (closure_expression)
6 (block)
12 (block)
7] @local.scope
13] @local.scope
@@ -11,8 +17,15 @@
11(parameter
17(parameter
12 (identifier) @local.definition)
18 (identifier) @local.definition)
13
19
20+(type_parameters
21+ (type_identifier) @local.definition)
22+(constrained_type_parameter
23+ left: (type_identifier) @local.definition)
24+(optional_type_parameter
25+ name: (type_identifier) @local.definition)
26+
14(closure_parameters (identifier) @local.definition)
27(closure_parameters (identifier) @local.definition)
15
28
16; References
29; References
17(identifier) @local.reference
30(identifier) @local.reference
18−
31+(type_identifier) @local.reference