summary refs log tree commit diff
path: root/src/doc/style/features/match.md
blob: 131e0fad79a92d33b460e5c7a8d6315b32b866d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
% Pattern matching

### Dereference `match` targets when possible. [FIXME: needs RFC]

Prefer

~~~~
match *foo {
    X(...) => ...
    Y(...) => ...
}
~~~~

over

~~~~
match foo {
    box X(...) => ...
    box Y(...) => ...
}
~~~~

<!-- ### Clearly indicate important scopes. **[FIXME: needs RFC]** -->

<!-- If it is important that the destructor for a value be executed at a specific -->
<!-- time, clearly bind that value using a standalone `let` -->