Skip to content

Commit 20d521d

Browse files
committed
Adjust benchmark_syntax_highlighting_parser for changes
1 parent 77607ab commit 20d521d

File tree

2 files changed

+86
-1
lines changed

2 files changed

+86
-1
lines changed
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
2+
<style>
3+
body { margin: 0; }
4+
pre { color: #DCDCCC; background: #3F3F3F; font-size: 22px; padding: 0.4em; }
5+
6+
.lifetime { color: #DFAF8F; font-style: italic; }
7+
.label { color: #DFAF8F; font-style: italic; }
8+
.comment { color: #7F9F7F; }
9+
.documentation { color: #629755; }
10+
.intra_doc_link { font-style: italic; }
11+
.injected { opacity: 0.65 ; }
12+
.struct, .enum { color: #7CB8BB; }
13+
.enum_variant { color: #BDE0F3; }
14+
.string_literal { color: #CC9393; }
15+
.field { color: #94BFF3; }
16+
.function { color: #93E0E3; }
17+
.function.unsafe { color: #BC8383; }
18+
.trait.unsafe { color: #BC8383; }
19+
.operator.unsafe { color: #BC8383; }
20+
.mutable.unsafe { color: #BC8383; text-decoration: underline; }
21+
.keyword.unsafe { color: #BC8383; font-weight: bold; }
22+
.macro.unsafe { color: #BC8383; }
23+
.parameter { color: #94BFF3; }
24+
.text { color: #DCDCCC; }
25+
.type { color: #7CB8BB; }
26+
.builtin_type { color: #8CD0D3; }
27+
.type_param { color: #DFAF8F; }
28+
.attribute { color: #94BFF3; }
29+
.numeric_literal { color: #BFEBBF; }
30+
.bool_literal { color: #BFE6EB; }
31+
.macro { color: #94BFF3; }
32+
.proc_macro { color: #94BFF3; text-decoration: underline; }
33+
.derive { color: #94BFF3; font-style: italic; }
34+
.module { color: #AFD8AF; }
35+
.value_param { color: #DCDCCC; }
36+
.variable { color: #DCDCCC; }
37+
.format_specifier { color: #CC696B; }
38+
.mutable { text-decoration: underline; }
39+
.escape_sequence { color: #94BFF3; }
40+
.keyword { color: #F0DFAF; font-weight: bold; }
41+
.control { font-style: italic; }
42+
.reference { font-style: italic; font-weight: bold; }
43+
.const { font-weight: bolder; }
44+
45+
.invalid_escape_sequence { color: #FC5555; text-decoration: wavy underline; }
46+
.unresolved_reference { color: #FC5555; text-decoration: wavy underline; }
47+
</style>
48+
<pre><code><span class="keyword">macro_rules</span><span class="macro_bang">!</span> <span class="macro declaration">id</span> <span class="brace">{</span>
49+
<span class="parenthesis">(</span><span class="punctuation">$</span><span class="parenthesis">(</span><span class="punctuation">$</span>tt<span class="colon">:</span>tt<span class="parenthesis">)</span><span class="punctuation">*</span><span class="parenthesis">)</span> <span class="operator">=</span><span class="angle">&gt;</span> <span class="brace">{</span>
50+
<span class="punctuation">$</span><span class="parenthesis">(</span><span class="punctuation">$</span>tt<span class="parenthesis">)</span><span class="punctuation">*</span>
51+
<span class="brace">}</span><span class="semicolon">;</span>
52+
<span class="brace">}</span>
53+
<span class="keyword const">const</span> <span class="constant const declaration">CONST_ITEM</span><span class="colon">:</span> <span class="keyword">*</span><span class="keyword">const</span> <span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="operator">=</span> <span class="operator">&</span><span class="keyword">raw</span> <span class="keyword">const</span> <span class="parenthesis">(</span><span class="parenthesis">)</span><span class="semicolon">;</span>
54+
<span class="keyword const">const</span> <span class="keyword">fn</span> <span class="function const declaration">const_fn</span><span class="angle">&lt;</span><span class="keyword">const</span> <span class="const_param const declaration">CONST_PARAM</span><span class="colon">:</span> <span class="parenthesis">(</span><span class="parenthesis">)</span><span class="angle">&gt;</span><span class="parenthesis">(</span><span class="keyword const">const</span> <span class="brace">{</span><span class="brace">}</span><span class="colon">:</span> <span class="keyword">const</span> <span class="keyword">fn</span><span class="parenthesis">(</span><span class="parenthesis">)</span><span class="parenthesis">)</span> <span class="keyword">where</span> <span class="parenthesis">(</span><span class="parenthesis">)</span><span class="colon">:</span> <span class="keyword const">const</span> <span class="trait">ConstTrait</span> <span class="brace">{</span>
55+
<span class="constant const">CONST_ITEM</span><span class="semicolon">;</span>
56+
<span class="const_param const">CONST_PARAM</span><span class="semicolon">;</span>
57+
<span class="keyword const">const</span> <span class="brace">{</span>
58+
<span class="keyword">const</span> <span class="punctuation">|</span><span class="punctuation">|</span> <span class="brace">{</span><span class="brace">}</span>
59+
<span class="brace">}</span>
60+
<span class="macro">id</span><span class="macro_bang">!</span><span class="parenthesis macro">(</span>
61+
<span class="constant const macro">CONST_ITEM</span><span class="semicolon macro">;</span>
62+
<span class="const_param const macro">CONST_PARAM</span><span class="semicolon macro">;</span>
63+
<span class="keyword const macro">const</span> <span class="brace macro">{</span>
64+
<span class="keyword macro">const</span> <span class="punctuation macro">|</span><span class="punctuation macro">|</span> <span class="brace macro">{</span><span class="brace macro">}</span>
65+
<span class="brace macro">}</span><span class="semicolon macro">;</span>
66+
<span class="operator macro">&</span><span class="keyword macro">raw</span> <span class="keyword macro">const</span> <span class="parenthesis macro">(</span><span class="parenthesis macro">)</span><span class="semicolon macro">;</span>
67+
<span class="keyword macro">const</span>
68+
<span class="parenthesis macro">)</span><span class="semicolon">;</span>
69+
<span class="brace">}</span>
70+
<span class="keyword">trait</span> <span class="trait declaration">ConstTrait</span> <span class="brace">{</span>
71+
<span class="keyword const">const</span> <span class="constant associated const declaration static trait">ASSOC_CONST</span><span class="colon">:</span> <span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="operator">=</span> <span class="parenthesis">(</span><span class="parenthesis">)</span><span class="semicolon">;</span>
72+
<span class="keyword const">const</span> <span class="keyword">fn</span> <span class="function associated const declaration static trait">assoc_const_fn</span><span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="brace">{</span><span class="brace">}</span>
73+
<span class="brace">}</span>
74+
<span class="keyword">impl</span> <span class="keyword const">const</span> <span class="trait">ConstTrait</span> <span class="keyword">for</span> <span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="brace">{</span>
75+
<span class="keyword const">const</span> <span class="constant associated const declaration static trait">ASSOC_CONST</span><span class="colon">:</span> <span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="operator">=</span> <span class="parenthesis">(</span><span class="parenthesis">)</span><span class="semicolon">;</span>
76+
<span class="keyword const">const</span> <span class="keyword">fn</span> <span class="function associated const declaration static trait">assoc_const_fn</span><span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="brace">{</span><span class="brace">}</span>
77+
<span class="brace">}</span>
78+
79+
<span class="keyword">macro_rules</span><span class="macro_bang">!</span> <span class="macro declaration">unsafe_deref</span> <span class="brace">{</span>
80+
<span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="operator">=</span><span class="angle">&gt;</span> <span class="brace">{</span>
81+
<span class="punctuation">*</span><span class="parenthesis">(</span><span class="punctuation">&</span><span class="parenthesis">(</span><span class="parenthesis">)</span> <span class="keyword">as</span> <span class="punctuation">*</span><span class="keyword">const</span> <span class="parenthesis">(</span><span class="parenthesis">)</span><span class="parenthesis">)</span>
82+
<span class="brace">}</span><span class="semicolon">;</span>
83+
<span class="brace">}</span></code></pre>

crates/ide/src/syntax_highlighting/tests.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1219,7 +1219,9 @@ fn benchmark_syntax_highlighting_parser() {
12191219
.highlight(HL_CONFIG, file_id)
12201220
.unwrap()
12211221
.iter()
1222-
.filter(|it| it.highlight.tag == HlTag::Symbol(SymbolKind::Function))
1222+
.filter(|it| {
1223+
matches!(it.highlight.tag, HlTag::Symbol(SymbolKind::Function | SymbolKind::Method))
1224+
})
12231225
.count()
12241226
};
12251227
assert_eq!(hash, 1169);

0 commit comments

Comments
 (0)