Skip to content

Commit

Permalink
Change exhaustiveness analysis to permit multiple constructors per pa…
Browse files Browse the repository at this point in the history
…ttern

Slice patterns are different from the rest in that a single slice pattern
does not have a distinct constructor if it contains a variable-length subslice
pattern. For example, the pattern [a, b, ..tail] can match a slice of length 2, 3, 4
and so on.

As a result, the decision tree for exhaustiveness and redundancy analysis should
explore each of those constructors separately to determine if the pattern could be useful
when specialized for any of them.
  • Loading branch information
Jakub Wieczorek committed Jul 2, 2014
1 parent ca2778e commit 9b3f9d9
Show file tree
Hide file tree
Showing 5 changed files with 413 additions and 204 deletions.
Loading

0 comments on commit 9b3f9d9

Please sign in to comment.