AND/ORパターンの概要
ANDパターンは、入力値が「2つのパターンと一致する」場合にマッチングします。ANDパターンの両側の条件の型は互換性がなければなりません。
ORパターンは、入力値が「複数のパターンのいずれかに一致する」場合にマッチングします。ANDパターン同様、条件内のすべての型は互換性がなければなりません。
サンプルでみるANDパターン
以下の例は、タプルパターンを利用したANDパターンのサンプルです。
サンプルの9-10行目でANDパターンが使われています。9行目は、「(var1, var2) という2要素のタプル型で、かつ、左の要素が0」の場合にパターンマッチします。10行目は、「(var1, var2) という2要素のタプル型で、かつ、右の要素が0」の場合にパターンマッチします。
このように2つの条件をマッチングさせたい場合にANDパターンを利用します。
サンプルでみるORパターン
以下の例は、タプルパターンを利用したORパターンのサンプルです。
サンプルの8行目でORパターンが使われています。8行目は、「2要素のタプル型のいずれかの要素に0がある」場合にパターンマッチします。
このように複数の条件のどれか一つにでもマッチングした場合に、何か処理をさせたいときはORパターンを利用します。