| An array without a fixed length was pattern-matched. |
| |
| Erroneous code example: |
| |
| ```compile_fail,E0730 |
| fn is_123<const N: usize>(x: [u32; N]) -> bool { |
| match x { |
| [1, 2, ..] => true, // error: cannot pattern-match on an |
| // array without a fixed length |
| _ => false |
| } |
| } |
| ``` |
| |
| To fix this error, you have two solutions: |
| 1. Use an array with a fixed length. |
| 2. Use a slice. |
| |
| Example with an array with a fixed length: |
| |
| ``` |
| fn is_123(x: [u32; 3]) -> bool { // We use an array with a fixed size |
| match x { |
| [1, 2, ..] => true, // ok! |
| _ => false |
| } |
| } |
| ``` |
| |
| Example with a slice: |
| |
| ``` |
| fn is_123(x: &[u32]) -> bool { // We use a slice |
| match x { |
| [1, 2, ..] => true, // ok! |
| _ => false |
| } |
| } |
| ``` |