| --- matching cases --- |
| |
| | construct | let _ | let else _ | |
| | ------------ | --------- | ---------- | |
| | vanilla | drop,body | drop,body | |
| | & | body,drop | body,drop | |
| | &mut | body,drop | body,drop | |
| | move | drop,body | drop,body | |
| | fn(this) | drop,body | drop,body | |
| | tuple | n/a,n/a | drop,body | |
| | array | n/a,n/a | drop,body | |
| | ref & | body,drop | body,drop | |
| | ref mut &mut | body,drop | body,drop | |
| |
| | construct | let _v | let else _v | |
| | ------------ | --------- | ----------- | |
| | vanilla | drop,body | drop,body | |
| | & | body,drop | body,drop | |
| | &mut | body,drop | body,drop | |
| | move | drop,body | drop,body | |
| | fn(this) | drop,body | drop,body | |
| | tuple | n/a,n/a | drop,body | |
| | array | n/a,n/a | drop,body | |
| | ref & | body,drop | body,drop | |
| | ref mut &mut | body,drop | body,drop | |
| |
| --- mismatching cases --- |
| |
| | construct | let else _ mismatch | let else _v mismatch | |
| | ------------ | ------------------- | -------------------- | |
| | vanilla | drop,else | drop,else | |
| | & | drop,else | drop,else | |
| | &mut | drop,else | drop,else | |
| | move | drop,else | drop,else | |
| | fn(this) | drop,else | drop,else | |
| | tuple | drop,else | drop,else | |
| | array | drop,else | drop,else | |
| | ref & | drop,else | drop,else | |
| | ref mut &mut | drop,else | drop,else | |
| |
| | construct | let else 0 mismatch | let else 0 mismatch | |
| | ------------ | ------------------- | ------------------- | |
| | vanilla | drop,else | drop,else | |
| | & | drop,else | drop,else | |
| | &mut | drop,else | drop,else | |
| | move | drop,else | drop,else | |
| | fn(this) | drop,else | drop,else | |
| | tuple | drop,else | drop,else | |
| | array | drop,else | drop,else | |
| | ref & | drop,else | drop,else | |
| | ref mut &mut | drop,else | drop,else | |