| A tuple struct or tuple variant was used in a pattern as if it were a struct or |
| struct variant. |
| |
| Erroneous code example: |
| |
| ```compile_fail,E0769 |
| enum E { |
| A(i32), |
| } |
| |
| let e = E::A(42); |
| |
| match e { |
| E::A { number } => { // error! |
| println!("{}", number); |
| } |
| } |
| ``` |
| |
| To fix this error, you can use the tuple pattern: |
| |
| ``` |
| # enum E { |
| # A(i32), |
| # } |
| # let e = E::A(42); |
| match e { |
| E::A(number) => { // ok! |
| println!("{}", number); |
| } |
| } |
| ``` |
| |
| Alternatively, you can also use the struct pattern by using the correct field |
| names and binding them to new identifiers: |
| |
| ``` |
| # enum E { |
| # A(i32), |
| # } |
| # let e = E::A(42); |
| match e { |
| E::A { 0: number } => { // ok! |
| println!("{}", number); |
| } |
| } |
| ``` |