File tree Expand file tree Collapse file tree 1 file changed +13
-15
lines changed Expand file tree Collapse file tree 1 file changed +13
-15
lines changed Original file line number Diff line number Diff line change 6
6
Macros
7
7
======
8
8
9
- .. guideline :: Avoid specialized, fixed patterns within declarative macros
10
- :id: gui_FSpI084vbwmJ
11
- :category: required
9
+ .. guideline :: Shall not use Declarative Macros
10
+ :id: gui_h0uG1C9ZjryA
11
+ :category: mandatory
12
12
:status: draft
13
- :release: 1.85.0;1.85.1
14
- :fls: fls_w44hav7mw3ao
13
+ :release: todo
14
+ :fls: fls_xa7lp0zg1ol2
15
15
:decidability: decidable
16
- :scope: module
16
+ :scope: system
17
17
:tags: reduce-human-error
18
18
19
- Matchers within macro rules are evaluated sequentially and short-circuit on
20
- the first match. If a specialized fixed matcher follows a broader matcher,
21
- it may be unreachable. This can lead to subtle and surprising bugs. It is
22
- encouraged to avoid the use of specialized, fixed matchers.
19
+ Description of the guideline goes here.
23
20
24
21
.. rationale ::
25
22
:id: rat_U3AEUPyaUhcb
31
28
:id: non_compl_ex_Gb4zimei8cNI
32
29
:status: draft
33
30
34
- Explanation of code example.
31
+ (example of a simple expansion using a proc-macro)
35
32
36
33
.. code-block :: rust
37
34
43
40
:id: compl_ex_Pw7YCh4Iv47Z
44
41
:status: draft
45
42
46
- Explanation of code example
43
+ (example of the same simple expansion using a declarative macro)
47
44
48
45
.. code-block :: rust
49
46
@@ -307,16 +304,17 @@ Macros
307
304
308
305
.. guideline :: Avoid specialized, fixed patterns within declarative macros
309
306
:id: gui_FSpI084vbwmJ
307
+ :category: macros
310
308
:status: draft
309
+ :release: todo
311
310
:fls: fls_w44hav7mw3ao
311
+ :decidability: decidable
312
+ :scope: system
312
313
:tags: reduce-human-error
313
- :category: macros
314
- :recommendation: encouraged
315
314
316
315
Description of the guideline goes here.
317
316
318
317
.. rationale ::
319
-
320
318
:id: rat_zqr9uEqP6nzW
321
319
:status: draft
322
320
You can’t perform that action at this time.
0 commit comments